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
标头 dbghelp.h
Library Dbghelp.lib
DLL Dbghelp.dll
可再发行组件 DbgHelp.dll 5.1 或更高版本

另请参阅

DbgHelp 函数

FPO_DATA

IMAGE_FUNCTION_ENTRY

SymInitialize

_IMAGE_RUNTIME_FUNCTION_ENTRY