IDebugSymbols3::GetNearNameByOffset 方法 (dbgeng.h)
GetNearNameByOffset 方法返回位于指定位置附近的符号的名称。
语法
HRESULT GetNearNameByOffset(
[in] ULONG64 Offset,
[in] LONG Delta,
[out, optional] PSTR NameBuffer,
[in] ULONG NameBufferSize,
[out, optional] PULONG NameSize,
[out, optional] PULONG64 Displacement
);
参数
[in] Offset
指定目标虚拟地址空间中确定所需符号的位置。
[in] Delta
指定所需符号与位于 Offset的符号之间的关系。 如果为正值,则引擎将在位于 Offset的符号后返回 Delta 符号。 如果为负数,引擎将在位于 Offset的符号之前返回 Delta 符号。
[out, optional] NameBuffer
接收符号的名称。 名称由符号所属的模块限定(例如,mymodule!main)。 如果 NameBufferNULL,则不会返回此信息。
[in] NameBufferSize
指定 NameBuffer缓冲区的大小(以字符为单位)。 此大小包括“\0”终止字符的空间。
[out, optional] NameSize
接收符号名称的字符大小。 此大小包括“\0”终止字符的空间。 如果 NameSizeNULL,则不会返回此信息。
[out, optional] Displacement
接收 偏移量 的值与符号的目标内存地址空间中的位置之间的差异。 如果 排量NULL,则不会返回此信息。
返回值
此方法还可以返回其他错误值。 有关详细信息,请参阅 返回值。
返回代码 | 描述 |
---|---|
|
该方法成功。 |
|
该方法成功。 但是,缓冲区不够大,无法保存符号的名称,因此它被截断。 |
|
找不到与 偏移量 和 Delta 规范匹配的符号。 |
言论
通过增加或减少 delta的值,这些方法可用于循环访问从特定位置开始的目标符号。
如果 Delta 为零,则这些方法的行为方式与 getNameByOffset 相同。
有关符号和符号名称的详细信息,请参阅 符号。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | dbgeng.h (包括 Dbgeng.h) |