IDebugSymbols2::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 符號之前差異符號的符號。

[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_NOINTERFACE
找不到符合 OffsetDelta 規格的符號。

備註

藉由增加或減少 Delta 的值,這些方法可用來逐一查看從特定位置開始的目標符號。

如果 Delta 為零,這些方法的行為與 GetNameByOffset 相同。

如需符號和符號名稱的詳細資訊,請參閱 符號

規格需求

需求
目標平台 桌面
標頭 dbgeng.h (包含 Dbgeng.h)

另請參閱

GetNameByOffset

GetOffsetByName

IDebugSymbols

IDebugSymbols2

IDebugSymbols3