IDebugHostSymbols::EnumerateModules メソッド (dbgmodel.h)
EnumerateModules メソッドは、特定のホスト コンテキストで使用可能なすべてのモジュールを列挙する列挙子を作成します。 そのホスト コンテキストは、プロセス コンテキストをカプセル化するか、Windows カーネルのようなものをカプセル化する可能性があります。
構文
HRESULT EnumerateModules(
IDebugHostContext *context,
IDebugHostSymbolEnumerator **moduleEnum
);
パラメーター
context
読み込まれたすべてのモジュールを列挙するホスト コンテキスト。
moduleEnum
指定されたコンテキストに読み込まれたすべてのモジュールを列挙する列挙子がここで返されます。
戻り値
このメソッドは、成功または失敗を示す HRESULT を返します。
注釈
サンプル コード
ComPtr<IDebugHost> spHost; /* get the host */
ComPtr<IDebugHostSymbols> spSym;
if (SUCCEEDED(spHost.As(&spSym)))
{
// Enumerate all modules in the current UI context (process) of the debug host:
ComPtr<IDebugHostSymbolEnumerator> spEnum;
if (SUCCEEDED(spSym->EnumerateModules(USE_CURRENT_HOST_CONTEXT, &spEnum)))
{
HRESULT hr = S_OK;
while (SUCCEEDED(hr))
{
ComPtr<IDebugHostSymbol> spModSym;
hr = spEnum->GetNext(&spModSym);
if (SUCCEEDED(hr))
{
ComPtr<IDebugHostModule> spModule;
if (SUCCEEDED(spModSym.As(&spModule))) /* should always succeed */
{
// spModule is one of the modules in the current
// UI context (process) of the debug host
}
}
}
// hr == E_BOUNDS : hit the end of the enumerator
// hr == E_ABORT : a user interrupt was requested /
// propagate upwards immediately
}
}
要件
要件 | 値 |
---|---|
Header | dbgmodel.h |