Поделиться через


Функция FindDebugInfoFileExW (dbghelp.h)

Находит указанный файл отладки (DBG).

Синтаксис

HANDLE IMAGEAPI FindDebugInfoFileExW(
  [in]           PCWSTR                     FileName,
  [in]           PCWSTR                     SymbolPath,
  [out]          PWSTR                      DebugFilePath,
  [in, optional] PFIND_DEBUG_FILE_CALLBACKW Callback,
  [in, optional] PVOID                      CallerData
);

Параметры

[in] FileName

Имя найдите dbg-файла. Можно использовать частичный путь.

[in] SymbolPath

Путь к файлам символов. Это может быть несколько путей, разделенных точкой с запятой. Чтобы получить путь к символам, используйте функцию SymGetSearchPath.

[out] DebugFilePath

Указатель на буфер, получающий полный путь к DBG-файлу.

[in, optional] Callback

Определяемая приложением функция обратного вызова, которая проверяет, найден ли правильный файл или функция должна продолжать поиск. Дополнительные сведения см. в FindDebugInfoFileProc.

Этот параметр может быть null.

[in, optional] CallerData

Необязательные пользовательские данные для передачи функции обратного вызова.

Возвращаемое значение

Если функция выполнена успешно, возвращаемое значение является открытым дескриптором для DBG-файла.

Если функция завершается ошибкой, возвращаемое значение равно NULL. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.

Замечания

Функция FindDebugInfoFileEx используется для поиска DBG-файла. Эта функция предоставляется, чтобы поиск можно было проводить в нескольких разных каталогах с помощью одного вызова функции. Параметр SymbolPath может содержать несколько путей, каждый из которых разделен точкой с запятой (;). При указании нескольких путей функция выполняет поиск по каждому указанному каталогу для файла. При расположении файла поиск останавливается. Таким образом, обязательно укажите SymbolPath с путями в правильном порядке.

Если указанное имя файла не включает расширение DBG, FindDebugInfoFileEx выполняет поиск файла в следующей последовательности:

  1. SymbolPath\Symbols\ext\имя файлаdbg
  2. SymbolPath\ext\имя файлаdbg
  3. SymbolPath\имя файлаdbg
  4. FileNamePath\имя файлаdbg
Все функции DbgHelp, такие как этот, являются одним потоком. Таким образом, вызовы из нескольких потоков в эту функцию, скорее всего, приведет к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все одновременные вызовы из нескольких потоков в эту функцию.

Чтобы вызвать версию этой функции Юникода, определите DBGHELP_TRANSLATE_TCHAR.

Заметка

Заголовок dbghelp.h определяет FindDebugInfoFileEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
целевая платформа Виндоус
заголовка dbghelp.h
библиотеки Dbghelp.lib
DLL Dbghelp.dll
распространяемый DbgHelp.dll 5.1 или более поздней версии

См. также

функций DbgHelp

FindDebugInfoFileProc

SymGetSearchPath