This function retrieves information about the first block of a heap allocated by a process.
BOOL WINAPI Heap32First( HANDLE hSnapshot, LPHEAPENTRY32 lphe, 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.