SymSearchW 函式 (dbghelp.h)
搜尋符合指定準則的 PDB 符號。
語法
BOOL IMAGEAPI SymSearchW(
[in] HANDLE hProcess,
[in] ULONG64 BaseOfDll,
[in, optional] DWORD Index,
[in, optional] DWORD SymTag,
[in, optional] PCWSTR Mask,
[in, optional] DWORD64 Address,
[in] PSYM_ENUMERATESYMBOLS_CALLBACKW EnumSymbolsCallback,
[in, optional] PVOID UserContext,
[in] DWORD Options
);
參數
[in] hProcess
進程的句柄。 此句柄先前必須傳遞至 SymInitialize 函式。
[in] BaseOfDll
模組的基位址。 如果此值為零,且 Mask 包含驚歎號 (!),函式會跨模組查看。 如果此值為零,且 Mask 不包含驚歎號,則函式會使用 SymSetContext 函式所建立的範圍。
[in, optional] Index
符號的唯一值。
[in, optional] SymTag
PDB 分類。 這些值定義於 SymTagEnum 列舉類型中的 Dbghelp.h 中。 如需描述,請參閱 PDB 檔。
[in, optional] Mask
通配符表達式,表示要列舉之符號的名稱。 若要指定模組名稱,請使用 !mod 語法。
[in, optional] Address
符號的位址。
[in] EnumSymbolsCallback
SymEnumSymbolsProc 回呼函式,可接收符號資訊。
[in, optional] UserContext
傳遞至回呼函式的使用者定義值,或 NULL。 這個參數通常由應用程式用來將指標傳遞至提供回呼函式內容的數據結構。
[in] Options
控制此函式行為的選項。
價值 | 意義 |
---|---|
|
在 .pdb 檔案中包含所有符號和其他數據。
DbgHelp 6.6 和更早版本:不支援此值。 |
|
只搜尋全域符號。 |
|
僅供內部使用。 |
|
從頂端遞歸以尋找所有符號。 |
傳回值
如果函式成功,則傳回值 TRUE。
如果函式失敗,則傳回值 FALSE。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError。
言論
所有 DbgHelp 函式,例如此函式,都是單個線程。 因此,從一個以上的線程呼叫此函式可能會導致非預期的行為或記憶體損毀。 若要避免這種情況,您必須將多個線程的所有並行呼叫同步至此函式。
若要呼叫此函式的 Unicode 版本,請定義DBGHELP_TRANSLATE_TCHAR。
注意
dbghelp.h 標頭會將 SymSearch 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
目標平臺 | 窗戶 |
標頭 | dbghelp.h |
連結庫 | Dbghelp.lib |
DLL | Dbghelp.dll |
可轉散發 | DbgHelp.dll 6.2 或更新版本 |