Compartilhar via


Função Heap32First (tlhelp32.h)

Recupera informações sobre o primeiro bloco de um heap que foi alocado por um processo.

Sintaxe

BOOL Heap32First(
  [in, out] LPHEAPENTRY32 lphe,
  [in]      DWORD         th32ProcessID,
  [in]      ULONG_PTR     th32HeapID
);

Parâmetros

[in, out] lphe

Um ponteiro para uma estrutura HEAPENTRY32 .

[in] th32ProcessID

O identificador do contexto de processo que possui o heap.

[in] th32HeapID

O identificador do heap a ser enumerado.

Valor retornado

Retornará TRUE se as informações do primeiro bloco de heap tiverem sido copiadas para o buffer ou FALSE caso contrário. O valor de erro ERROR_NO_MORE_FILES será retornado pela função GetLastError se o heap for inválido ou vazio.

Comentários

O aplicativo de chamada deve definir o membro dwSize de HEAPENTRY32 para o tamanho, em bytes, da estrutura. Heap32First altera dwSize para o número de bytes gravados na estrutura. Isso nunca será maior do que o valor inicial de dwSize, mas pode ser menor. Se o valor for menor, não dependa dos valores de nenhum membro cujos deslocamentos sejam maiores que esse valor.

Para acessar os blocos subsequentes do mesmo heap, use a função Heap32Next .

Andar no heap com Heap32First e Heap32Next é ineficiente, especialmente para heaps grandes. Em vez disso, use HeapWalk .

Exemplos

Para obter um exemplo, consulte Atravessando a lista de heaps.

Requisitos

   
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 tlhelp32.h
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

HEAPENTRY32

Listas de heap e caminhada de heap

Heap32Next

Funções de Ajuda da Ferramenta