SymSearch 函式 (dbghelp.h)
搜尋符合指定準則的 PDB 符號。
語法
BOOL IMAGEAPI SymSearch(
[in] HANDLE hProcess,
[in] ULONG64 BaseOfDll,
[in, optional] DWORD Index,
[in, optional] DWORD SymTag,
[in, optional] PCSTR Mask,
[in, optional] DWORD64 Address,
[in] PSYM_ENUMERATESYMBOLS_CALLBACK 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。
需求
目標平台 | Windows |
標頭 | dbghelp.h |
程式庫 | Dbghelp.lib |
Dll | Dbghelp.dll |
可轉散發套件 | DbgHelp.dll 6.2 或更新版本 |