SymGetSymbolFile 函式 (dbghelp.h)
在指定的符號路徑中找出符號檔。
語法
BOOL IMAGEAPI SymGetSymbolFile(
[in, optional] HANDLE hProcess,
[in, optional] PCSTR SymPath,
[in] PCSTR ImageFile,
[in] DWORD Type,
[out] PSTR SymbolFile,
[in] size_t cSymbolFile,
[out] PSTR DbgFile,
[in] size_t cDbgFile
);
參數
[in, optional] hProcess
原本傳遞至 SymInitialize 函式之進程的控制碼。
如果這個控制碼是 0, SymPath 不能是 Null。 使用此選項載入符號檔,而不呼叫 SymInitialize 或 SymCleanup。
[in, optional] SymPath
符號路徑。 如果此參數為 Null 或空字串,則函式會使用 SymInitialize 或 SymSetSearchPath 函式所設定的符號路徑。
[in] ImageFile
影像檔的名稱。
[in] Type
符號檔的類型。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
.exe 或 .dll 檔案。 |
|
.dbg 檔案。 |
|
.pdb 檔案。 |
|
保留的。 |
[out] SymbolFile
接收符號檔名稱之 Null 終止字串的指標。
[in] cSymbolFile
SymbolFile緩衝區的大小,以字元為單位。
[out] DbgFile
接收符號檔完整路徑之緩衝區的指標。 這個緩衝區至少必須是MAX_PATH個字元。
[in] cDbgFile
DbgFile緩衝區的大小,以字元為單位。
傳回值
如果伺服器找到有效的符號檔,則會傳回 TRUE;否則,它會傳回 FALSE ,而 GetLastError 會傳回值,指出為何未傳回符號檔。
備註
所有 DbgHelp 函式,例如此函式都是單一執行緒。 因此,從多個執行緒呼叫此函式可能會導致非預期的行為或記憶體損毀。 若要避免這種情況,您必須將所有並行呼叫從多個執行緒同步處理到此函式。
若要呼叫此函式的 Unicode 版本,請定義DBGHELP_TRANSLATE_TCHAR。
需求
目標平台 | Windows |
標頭 | dbghelp.h |
程式庫 | Dbghelp.lib |
Dll | Dbghelp.dll |
可轉散發套件 | DbgHelp.dll 6.3 或更新版本 |