FindDebugInfoFileEx 函式 (dbghelp.h)

找到指定的 除錯(.dbg)檔案。

語法

HANDLE IMAGEAPI FindDebugInfoFileEx(
  [in]           PCSTR                     FileName,
  [in]           PCSTR                     SymbolPath,
  [out]          PSTR                      DebugFilePath,
  [in, optional] PFIND_DEBUG_FILE_CALLBACK Callback,
  [in, optional] PVOID                     CallerData
);

Parameters

[in] FileName

要找到的 .dbg 檔案名稱。 你可以使用部分路徑。

[in] SymbolPath

符號檔案所在的路徑。 這可能是多條路徑,中間用分號分隔。 要取得符號路徑,請使用 SymGetSearchPath 函式。

[out] DebugFilePath

一個指向緩衝區的指標,接收 .dbg 檔案的完整路徑。 此緩衝區必須至少為MAX_PATH+1個字元。

[in, optional] Callback

一個應用程式定義的回調函式,用來驗證是否找到正確的檔案,或是函式應該繼續搜尋。 欲了解更多資訊,請參閱 FindDebugInfoFileProc。

此參數可能是 NULL。

[in, optional] CallerData

可選的使用者自訂資料可傳遞給回調函式。

返回值

若函式成功,回傳值即為 .dbg 檔案的開啟句柄。

如果函式失敗,傳回值為 NULL。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError。

備註

FindDebugInfoFileEx 函式用於定位 .dbg 檔案。 此功能的提供是為了讓搜尋能透過單一函式呼叫在多個不同的目錄中進行。 SymbolPath 參數可以包含多條路徑,每條路徑以分號(;) 分隔)。 當指定多條路徑時,函式會搜尋每個指定的目錄以尋找該檔案。 當檔案被找到後,搜尋即停止。 因此,務必將 SymbolPath 的路徑順序正確指定。

若指定的檔名未包含 .dbg 副檔名, FindDebugInfoFileEx 會依下列順序搜尋該檔案:

  1. 符號路徑\符號\ext\filename.dbg
  2. SymbolPath\ext\filename.dbg
  3. SymbolPath\filename.dbg
  4. 檔案名稱路徑\檔案名稱.dbg
所有 DbgHelp 函式,例如這個,都是單執行緒。 因此,來自多個執行緒對此函式的呼叫,很可能導致意外行為或記憶體損毀。 為避免此情況,您必須將多個執行緒的所有同時呼叫同步至此函式。

要呼叫此函式的 Unicode 版本,請定義 DBGHELP_TRANSLATE_TCHAR。

要求

需求 價值
目標平臺 Windows 作業系統
標頭 dbghelp.h
範本庫 Dbghelp.lib
DLL Dbghelp.dll
可再發行 DbgHelp.dll 5.1 或更新版本

另請參閱

DbgHelp 函式

FindDebugInfoFileProc

SymGetSearchPath