Функция SymFromAddrW (dbghelp.h)
Извлекает сведения о символах для указанного адреса.
Синтаксис
BOOL IMAGEAPI SymFromAddrW(
[in] HANDLE hProcess,
[in] DWORD64 Address,
[out, optional] PDWORD64 Displacement,
[in, out] PSYMBOL_INFOW Symbol
);
Параметры
[in] hProcess
Дескриптор процесса. Этот дескриптор должен быть передан в функцию
[in] Address
Адрес, для которого должен находиться символ. Адрес не должен находиться на границе символа. Если адрес поступает после начала символа и до конца символа, он найден.
[out, optional] Displacement
Смещение от начала символа или нуля.
[in, out] Symbol
Указатель на SYMBOL_INFO структуру, которая предоставляет сведения о символе. Имя символа является переменной длины; поэтому этот буфер должен быть достаточно большим, чтобы сохранить имя, хранящееся в конце структуры SYMBOL_INFO. Не забудьте задать элемент MaxNameLen число байтов, зарезервированных для имени.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение TRUE.
Если функция завершается ошибкой, возвращаемое значение FALSE. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Замечания
Все функции DbgHelp, такие как этот, являются одним потоком. Таким образом, вызовы из нескольких потоков в эту функцию, скорее всего, приведет к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все одновременные вызовы из нескольких потоков в эту функцию.
Чтобы вызвать версию этой функции Юникода, определите DBGHELP_TRANSLATE_TCHAR.
Примеры
Пример см. в разделе получение сведений о символах по адресу.
Заметка
Заголовок dbghelp.h определяет SymFromAddr как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
целевая платформа | Виндоус |
заголовка | dbghelp.h |
библиотеки |
Dbghelp.lib |
DLL | Dbghelp.dll |
распространяемый | DbgHelp.dll 5.1 или более поздней версии |
См. также
функций DbgHelp