Heap32First 関数 (tlhelp32.h)
プロセスによって割り当てられたヒープの最初のブロックに関する情報を取得します。
構文
BOOL Heap32First(
[in, out] LPHEAPENTRY32 lphe,
[in] DWORD th32ProcessID,
[in] ULONG_PTR th32HeapID
);
パラメーター
[in, out] lphe
HEAPENTRY32構造体へのポインター。
[in] th32ProcessID
ヒープを所有するプロセス コンテキストの識別子。
[in] th32HeapID
列挙するヒープの識別子。
戻り値
最初のヒープ ブロックの情報がバッファーにコピーされた場合は TRUE 、それ以外の場合は FALSE を 返します。 ヒープが無効または空の場合、 ERROR_NO_MORE_FILES エラー値は GetLastError 関数によって返されます。
解説
呼び出し元のアプリケーションでは、HEAPENTRY32 の dwSize メンバーを構造体のサイズ (バイト単位) に設定する必要があります。 Heap32First は 、dwSize を 構造体に書き込まれたバイト数に変更します。 これは dwSize の初期値を超えることはありませんが、小さい場合があります。 値が小さい場合は、オフセットがこの値より大きいメンバーの値に依存しないでください。
同じヒープの後続のブロックにアクセスするには、 Heap32Next 関数を使用します。
Heap32First と Heap32Next を使用してヒープをウォークすることは、特に大きなヒープでは非効率的です。 代わりに HeapWalk を使用してください。
例
例については、「 ヒープ リストの走査」を参照してください。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | tlhelp32.h |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |