シンボル モジュールの列挙
次のコードは、 SymLoadModule64 または SymInitialize 関数によって読み込まれたモジュールを一覧表示します。 SymEnumerateModules64 関数にはコールバック関数が必要です。コールバック関数は、読み込まれたモジュールごとに 1 回呼び出されます。 この例では、EnumModules はコールバック関数の実装です。 この例では、「シンボル ハンドラーの初期化」のコード を使用してシンボル ハンドラーを初期化していることを前提としています。
BOOL CALLBACK EnumModules(
PCTSTR ModuleName,
DWORD64 BaseOfDll,
PVOID UserContext )
{
UNREFERENCED_PARAMETER(UserContext);
_tprintf(TEXT("%08X %s\n"), BaseOfDll, ModuleName);
return TRUE;
}
if (SymEnumerateModules64(hProcess, EnumModules, NULL))
{
// SymEnumerateModules64 returned success
}
else
{
// SymEnumerateModules64 failed
error = GetLastError();
_tprintf(TEXT("SymEnumerateModules64 returned error : %d\n"), error);
}