Voltar à lista
Windows Win32Memóriakernel32.dllDepreciada

GlobalAlloc

Aloca memória do heap global — API legada, mantida por compatibilidade (ex.: com a área de transferência/Clipboard e OLE).

Descrição

Em Win32 moderno, é essencialmente um wrapper fino sobre o heap do processo; mantida sobretudo porque certas APIs (como a área de transferência) ainda exigem handles GlobalAlloc/HGLOBAL.

Header: winbase.hDLL: kernel32.dll

Depreciada

Para alocação de memória de propósito geral em código novo, prefira HeapAlloc ou o runtime C padrão (malloc/new) — GlobalAlloc existe majoritariamente por compatibilidade com APIs legadas.

Assinatura

HGLOBAL GlobalAlloc(UINT uFlags, SIZE_T dwBytes);

Parâmetros

ParâmetroTipoDescrição
uFlagsUINTGMEM_FIXED, GMEM_MOVEABLE, GMEM_ZEROINIT.
dwBytesSIZE_TTamanho do bloco a alocar.

Valor de retorno

Um handle/ponteiro para o bloco alocado em sucesso; NULL em erro (consulte GetLastError).

Códigos de erro (GetLastError)

ERROR_NOT_ENOUGH_MEMORY(8)
Memória insuficiente para processar o comando.

Relacionadas