Função LocalLock (winbase.h)
Bloqueia um objeto de memória local e retorna um ponteiro para o primeiro byte do bloco de memória do objeto.
Sintaxe
LPVOID LocalLock(
[in] HLOCAL hMem
);
Parâmetros
[in] hMem
Um identificador para o objeto de memória local. Esse identificador é retornado pela função LocalAlloc ou LocalReAlloc .
Retornar valor
Se a função for bem-sucedida, o valor retornado será um ponteiro para o primeiro byte do bloco de memória.
Se a função falhar, o valor retornado será NULL. Para obter informações de erro estendidas, chame GetLastError.
Comentários
As estruturas de dados internas para cada objeto de memória incluem uma contagem de bloqueio inicialmente zero. Para objetos de memória móveis, LocalLock incrementa a contagem em um e a função LocalUnlock diminui a contagem por um. Cada chamada bem-sucedida que um processo faz ao LocalLock para um objeto deve ser correspondida por uma chamada correspondente a LocalUnlock. A memória bloqueada não será movida ou descartada, a menos que o objeto de memória seja realocado usando a função LocalReAlloc . O bloco de memória de um objeto de memória bloqueado permanece bloqueado na memória até que sua contagem de bloqueios seja decrementada para zero, momento em que ele pode ser movido ou descartado.
Objetos de memória alocados com LMEM_FIXED sempre têm uma contagem de bloqueios de zero. Para esses objetos, o valor do ponteiro retornado é igual ao valor do identificador especificado.
Se o bloco de memória especificado tiver sido descartado ou se o bloco de memória tiver um tamanho de byte zero, essa função retornará NULL.
Os objetos descartados sempre têm uma contagem de bloqueios de zero.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2003 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winbase.h (inclua Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |