ホーム › System.Diagnostics.Debug › PSYM_ENUMSYMBOLS_CALLBACKW
PSYM_ENUMSYMBOLS_CALLBACKW
コールバックシグネチャ
BOOL PSYM_ENUMSYMBOLS_CALLBACKW(
LPWSTR SymbolName,
DWORD SymbolAddress,
DWORD SymbolSize,
void* UserContext
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| SymbolName | LPWSTR | シンボルの名前。 SymSetOptions 関数で SYMOPT_UNDNAME オプションが使用されている場合、この名前は装飾が解除された (undecorated) 形式になることがあります。 |
| SymbolAddress | DWORD | シンボルの先頭の仮想アドレス。 |
| SymbolSize | DWORD | シンボルのサイズ (バイト単位)。このサイズは計算によって求められる推定値です。場合によっては 0 になることがあります。 |
| UserContext | void* | SymEnumerateSymbols64 で指定されたユーザー定義の値、または NULL。通常このパラメーターは、コールバック関数が何らかのコンテキストを確立できるように、アプリケーションがデータ構造体へのポインターを渡すために使用します。 |
公式ドキュメント
SymEnumerateSymbols64 関数と共に使用されるアプリケーション定義のコールバック関数です。列挙されたシンボルごとに 1 回呼び出され、シンボルの情報を受け取ります。
PSYM_ENUMSYMBOLS_CALLBACK64 型および PSYM_ENUMSYMBOLS_CALLBACK64W 型は、このコールバック関数へのポインターを定義します。 SymEnumerateSymbolsProc64 は、アプリケーション定義の関数名のプレースホルダーです。
メモ この関数は互換性のためにのみ提供されています。アプリケーションでは
SymEnumSymbols を使用してください。
戻り値
この関数が TRUE を返した場合、列挙は続行されます。
この関数が FALSE を返した場合、列挙は停止します。
解説(Remarks)
呼び出し元のアプリケーションは、すべてのシンボルが列挙されるか、列挙コールバック関数が FALSE を返すまで、シンボルごとに 1 回呼び出されます。
このコールバック関数は、PSYM_ENUMSYMBOLS_CALLBACK コールバック関数に取って代わるものです。PSYM_ENUMSYMBOLS_CALLBACK は Dbghelp.h で次のように定義されています。
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define PSYM_ENUMSYMBOLS_CALLBACK PSYM_ENUMSYMBOLS_CALLBACK64
#define PSYM_ENUMSYMBOLS_CALLBACKW PSYM_ENUMSYMBOLS_CALLBACK64W
#else
typedef BOOL
(CALLBACK *PSYM_ENUMSYMBOLS_CALLBACK)(
__in PCSTR SymbolName,
__in ULONG SymbolAddress,
__in ULONG SymbolSize,
__in_opt PVOID UserContext
);
typedef BOOL
(CALLBACK *PSYM_ENUMSYMBOLS_CALLBACKW)(
__in PCWSTR SymbolName,
__in ULONG SymbolAddress,
__in ULONG SymbolSize,
__in_opt PVOID UserContext
);
#endif
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)