Функция FindExecutableImageEx (dbghelp.h)
Находит указанный исполняемый файл.
Синтаксис
HANDLE IMAGEAPI FindExecutableImageEx(
[in] PCSTR FileName,
[in] PCSTR SymbolPath,
[out] PSTR ImageFilePath,
[in, optional] PFIND_EXE_FILE_CALLBACK Callback,
[in, optional] PVOID CallerData
);
Параметры
[in] FileName
Имя файла символов, который необходимо найти. Этот параметр может быть частичным путем.
[in] SymbolPath
Путь, по которому находятся файлы символов. Эта строка может содержать несколько путей, разделенных точкой с запятой. Чтобы получить путь к символу, используйте функцию SymGetSearchPath .
[out] ImageFilePath
Указатель на буфер, получающий полный путь к исполняемому файлу.
[in, optional] Callback
Определяемая приложением функция обратного вызова, которая проверяет, найден ли правильный исполняемый файл или функция должна продолжить поиск. Дополнительные сведения см. в разделе FindExecutableImageProc.
Этот параметр может принимать значение NULL.
[in, optional] CallerData
Необязательные пользовательские данные для функции обратного вызова. Этот параметр может принимать значение NULL.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение представляет собой открытый дескриптор исполняемого файла.
Если функция завершается сбоем, возвращается значение NULL. Чтобы получить расширенные сведения об ошибке, вызовите Метод GetLastError.
Комментарии
Функция FindExecutableImageEx предоставляется, поэтому исполняемые файлы можно найти в нескольких разных каталогах с помощью одного вызова функции. Если параметр SymbolPath содержит несколько путей, функция выполняет поиск исполняемого файла в каждом указанном дереве каталогов. При обнаружении файла поиск останавливается. Таким образом, обязательно укажите SymbolPath с путями в правильном порядке.
Все функции DbgHelp, такие как эта, являются однопоточными. Таким образом, вызовы из нескольких потоков к этой функции, скорее всего, приведут к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все параллельные вызовы из нескольких потоков в эту функцию.
Чтобы вызвать версию юникода этой функции, определите DBGHELP_TRANSLATE_TCHAR.
Требования
Целевая платформа | Windows |
Header | dbghelp.h |
Библиотека | Dbghelp.lib |
DLL | Dbghelp.dll |
Распространяемые компоненты | DbgHelp.dll 5.1 или более поздней версии |