共用方式為


(dbgeng.h) 的 IDebugSymbols2::GetLineByOffset 方法

GetLineByOffset 方法會傳回目標中指令來源檔案中的來源檔名和行號。

語法

HRESULT GetLineByOffset(
  [in]            ULONG64  Offset,
  [out, optional] PULONG   Line,
  [out, optional] PSTR     FileBuffer,
  [in]            ULONG    FileBufferSize,
  [out, optional] PULONG   FileSize,
  [out, optional] PULONG64 Displacement
);

參數

[in] Offset

指定要傳回來源檔案和行號之指令之目標虛擬位址空間中的位置。

[out, optional] Line

接收 Offset 所指定指令的來源檔案內的行號。 如果 LineNULL,則不會傳回此資訊。

[out, optional] FileBuffer

接收包含 Offset 所指定指令之檔案的檔名。 如果 FileBufferNULL,則不會傳回這項資訊。

[in] FileBufferSize

指定 FileBuffer 緩衝區的大小,以字元為單位。

[out, optional] FileSize

指定來源檔名的大小,以字元為單位。 如果 FileSizeNULL,則不會傳回這項資訊。

[out, optional] Displacement

接收 Offset 中指定的位置與傳回行之第一個指令的位置之間的差異。 如果 位移NULL,則不會傳回這項資訊。

傳回值

這個方法也可能傳回其他錯誤值。 如需詳細資訊,請參閱 傳回值

傳回碼 描述
S_OK
此方法成功。
S_FALSE
此方法成功。 不過,緩衝區不夠大,無法保存來源檔案的名稱,而且名稱已截斷。

備註

如需來源檔案的詳細資訊,請參閱 使用原始程序檔

規格需求

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

另請參閱

GetOffsetByLine

IDebugSymbols

IDebugSymbols2

IDebugSymbols3