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


Функция 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 или более поздней версии

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

Функции DbgHelp

FPO_DATA

IMAGE_FUNCTION_ENTRY

SymInitialize

_IMAGE_RUNTIME_FUNCTION_ENTRY