IDebugSymbols::GetNameByOffset 方法 (dbgeng.h)

GetNameByOffset 方法返回目标虚拟地址空间中指定位置的符号的名称。

语法

HRESULT GetNameByOffset(
  [in]            ULONG64  Offset,
  [out, optional] PSTR     NameBuffer,
  [in]            ULONG    NameBufferSize,
  [out, optional] PULONG   NameSize,
  [out, optional] PULONG64 Displacement
);

参数

[in] Offset

指定目标虚拟地址空间中请求其名称的符号的位置。 偏移 量不需要指定符号的基位置;它只需在符号的内存分配中指定位置。

[out, optional] NameBuffer

接收符号的名称。 该名称由符号所属的模块限定 (例如 mymodule!main) 。 如果 NameBufferNULL,则不会返回此信息。

[in] NameBufferSize

指定缓冲区 NameBuffer 的大小(以字符为单位)。 此大小包括“\0”终止字符的空间。

[out, optional] NameSize

接收符号名称的大小(以字符为单位)。 此大小包括“\0”终止字符的空间。 如果 NameSizeNULL,则不会返回此信息。

[out, optional] Displacement

接收 Offset 值与符号的基位置之间的差异。 如果 排量NULL,则不会返回此信息。

返回值

此方法也可能返回其他错误值。 有关更多详细信息 ,请参阅返回值

返回代码 说明
S_OK
方法成功。
S_FALSE
方法成功。 但是,缓冲区不够大,无法容纳符号的名称,因此被截断。
E_FAIL
在指定位置找不到符号。

注解

有关符号和符号名称的详细信息,请参阅 符号

要求

要求
目标平台 桌面
标头 dbgeng.h (包括 Dbgeng.h)

另请参阅

GetNearNameByOffset

GetOffsetByName

IDebugSymbols

IDebugSymbols2

IDebugSymbols3