symGetSymPrev 函数 (dbghelp.h)
检索上一个符号的符号信息。
注意 提供此函数只是为了兼容性。 应用程序应使用 SymPrev。
语法
BOOL IMAGEAPI SymGetSymPrev(
[in] HANDLE hProcess,
[in, out] PIMAGEHLP_SYMBOL Symbol
);
参数
[in] hProcess
最初传递给 SymInitialize 函数的进程句柄。
[in, out] Symbol
指向 IMAGEHLP_SYMBOL64 结构的指针。
返回值
如果函数成功,则返回值为 TRUE。
如果函数失败,则返回值为 FALSE。 若要检索扩展的错误信息,请调用 GetLastError。
备注
SymGetSymPrev64 函数要求IMAGEHLP_SYMBOL64结构具有有效的数据,这些数据大概是从调用 SymGetSymFromAddr64 或 SymGetSymFromName64 函数获取的。 此结构按虚拟地址按顺序填充上一个符号的符号信息。
所有 DbgHelp 函数(例如此函数)都是单线程的。 因此,从多个线程调用此函数可能会导致意外行为或内存损坏。 若要避免这种情况,必须将多个线程中的所有并发调用同步到此函数。
若要调用此函数的 Unicode 版本,请定义 DBGHELP_TRANSLATE_TCHAR。 DbgHelp.h 中的 SymGetSymPrevW64 定义如下。
BOOL
IMAGEAPI
SymGetSymPrevW64(
__in HANDLE hProcess,
__inout PIMAGEHLP_SYMBOLW64 Symbol
);
此函数取代 SymGetSymPrev 函数。 有关详细信息,请参阅 更新的平台支持。 Dbghelp.h 中的 SymGetSymPrev 定义如下。
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetSymPrev SymGetSymPrev64
#define SymGetSymPrevW SymGetSymPrevW64
#else
BOOL
IMAGEAPI
SymGetSymPrev(
__in HANDLE hProcess,
__inout PIMAGEHLP_SYMBOL Symbol
);
BOOL
IMAGEAPI
SymGetSymPrevW(
__in HANDLE hProcess,
__inout PIMAGEHLP_SYMBOLW Symbol
);
#endif
要求
目标平台 | Windows |
标头 | dbghelp.h |
Library | Dbghelp.lib |
DLL | Dbghelp.dll |
可再发行组件 | DbgHelp.dll 5.1 或更高版本 |