Функция SymGetSymbolFileW (dbghelp.h)
Находит файл символов по указанному пути к символам.
Синтаксис
BOOL IMAGEAPI SymGetSymbolFileW(
[in, optional] HANDLE hProcess,
[in, optional] PCWSTR SymPath,
[in] PCWSTR ImageFile,
[in] DWORD Type,
[out] PWSTR SymbolFile,
[in] size_t cSymbolFile,
[out] PWSTR 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, такие как эта, являются однопоточными. Таким образом, вызовы из нескольких потоков к этой функции, скорее всего, приведут к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все параллельные вызовы из нескольких потоков в эту функцию.
Чтобы вызвать версию юникода этой функции, определите DBGHELP_TRANSLATE_TCHAR.
Примечание
Заголовок dbghelp.h определяет SymGetSymbolFile в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | dbghelp.h |
Библиотека | Dbghelp.lib |
DLL | Dbghelp.dll |
Распространяемые компоненты | DbgHelp.dll 6.3 или более поздней версии |