MSDN Library
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.


Windows Mobile 6.5
A version of this page is also available for

This function retrieves information about the first block of a heap allocated by a process.

BOOL WINAPI Heap32First(
  HANDLE hSnapshot,
  DWORD th32ProcessID,
  DWORD th32HeapID


[in] Handle to the snapshot returned from a previous call to the CreateToolhelp32Snapshot function. This parameter is specific to Windows Embedded CE.


[out] Pointer to a HEAPENTRY32 structure.


[in] Identifier of the process context that owns the heap.


[in] Identifier of the heap to enumerate.

TRUE indicates that information for the first heap block has been copied to the buffer. FALSE indicates success. The ERROR_NO_MORE_FILES error value, returned by GetLastError, indicates that the heap is invalid or empty.

The calling application must set the dwSize member of HEAPENTRY32 to the size, in bytes, of the structure.

Heap32First changes dwSize to the number of bytes written to the structure. This number is never greater than the initial value of dwSize, but it can be smaller. If the value is smaller, do not rely on the values of members whose offsets are greater than this value. To access subsequent blocks of the same heap, use the Heap32Next function.

Windows Embedded CEWindows CE 2.0 and later
Windows MobileWindows Mobile Version 5.0 and later

Community Additions

© 2016 Microsoft