Función LocalLock (winbase.h)
Bloquea un objeto de memoria local y devuelve un puntero al primer byte del bloque de memoria del objeto.
Sintaxis
LPVOID LocalLock(
[in] HLOCAL hMem
);
Parámetros
[in] hMem
Identificador del objeto de memoria local. La función LocalAlloc o LocalReAlloc devuelve este identificador.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es un puntero al primer byte del bloque de memoria.
Si la función no se realiza correctamente, el valor devuelto es NULL. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Las estructuras de datos internas de cada objeto de memoria incluyen un recuento de bloqueos que es inicialmente cero. En el caso de los objetos de memoria extraíbles, LocalLock incrementa el recuento en uno y la función LocalUnlock disminuye el recuento por uno. Cada llamada correcta que realiza un proceso a LocalLock para un objeto debe coincidir con una llamada correspondiente a LocalUnlock. La memoria bloqueada no se moverá ni descartará a menos que el objeto de memoria se reasigna mediante la función LocalReAlloc . El bloque de memoria de un objeto de memoria bloqueado permanece bloqueado en la memoria hasta que su recuento de bloqueos se reduce a cero, en cuyo momento se puede mover o descartar.
Los objetos de memoria asignados con LMEM_FIXED siempre tienen un recuento de bloqueos de cero. Para estos objetos, el valor del puntero devuelto es igual al valor del identificador especificado.
Si el bloque de memoria especificado se ha descartado o si el bloque de memoria tiene un tamaño de cero bytes, esta función devuelve NULL.
Los objetos descartados siempre tienen un recuento de bloqueos de cero.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winbase.h (incluya Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |