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


Функция 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
);

Параметры

[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\filename.dbg
  2. SymbolPath\ext\filename.dbg
  3. SymbolPath\filename.dbg
  4. FileNamePath\filename.dbg
Все функции DbgHelp, такие как эта, являются однопоточными. Поэтому вызовы из нескольких потоков к этой функции, скорее всего, приведут к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все параллельные вызовы из нескольких потоков в эту функцию.

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

Требования

Требование Значение
Целевая платформа Windows
Header dbghelp.h
Библиотека Dbghelp.lib
DLL Dbghelp.dll
Распространяемые компоненты DbgHelp.dll 5.1 или более поздней версии

См. также раздел

Функции DbgHelp

FindDebugInfoFileProc

SymGetSearchPath