Функция SymFunctionTableAccess (dbghelp.h)
Извлекает запись таблицы функций для указанного адреса.
Синтаксис
PVOID IMAGEAPI SymFunctionTableAccess(
[in] HANDLE hProcess,
[in] DWORD AddrBase
);
Параметры
[in] hProcess
Дескриптор процесса, который изначально был передан функции SymInitialize .
[in] AddrBase
Базовый адрес, для которого требуются сведения о таблице функций.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение является указателем на запись таблицы функции.
Если функция завершается сбоем, возвращается значение NULL. Чтобы получить расширенные сведения об ошибке, вызовите Метод GetLastError.
Комментарии
Тип возвращаемого указателя зависит от изображения, с которого загружаются символы.
x86: Если изображение предназначено для системы x86, это указатель на структуру FPO_DATA .
x64: Если изображение предназначено для системы x64, это указатель на структуру _IMAGE_RUNTIME_FUNCTION_ENTRY .
Все функции DbgHelp, такие как эта, являются однопоточными. Таким образом, вызовы из нескольких потоков к этой функции, скорее всего, приведут к непредвиденному поведению или повреждению памяти. Чтобы избежать этого, необходимо синхронизировать все параллельные вызовы из нескольких потоков в эту функцию.
Эта функция заменяет функцию SymFunctionTableAccess . Дополнительные сведения см. в разделе Обновленная поддержка платформы. SymFunctionTableAccess определяется в Dbghelp.h следующим образом.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymFunctionTableAccess SymFunctionTableAccess64
#else
PVOID
IMAGEAPI
SymFunctionTableAccess(
__in HANDLE hProcess,
__in DWORD AddrBase
);
#endif
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | dbghelp.h |
Библиотека | Dbghelp.lib |
DLL | Dbghelp.dll |
Распространяемые компоненты | DbgHelp.dll 5.1 или более поздней версии |