IDebugDataSpaces4::ReadVirtual 方法 (dbgeng.h)

ReadVirtual 方法會從目標的虛擬位址空間讀取記憶體。

語法

HRESULT ReadVirtual(
  [in]            ULONG64 Offset,
  [out]           PVOID   Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  BytesRead
);

參數

[in] Offset

指定要讀取的目標虛擬位址空間中的位置。

[out] Buffer

指定要讀取記憶體的緩衝區。

[in] BufferSize

指定緩衝區位元組的大小。 這也是所要求的位元組數目。

[out, optional] BytesRead

接收已讀取的位元組數目。 如果設定為 NULL,則不會傳回這項資訊。

傳回值

傳回碼 描述
S_OK
此方法成功。 BytesRead 可能小於 BufferSize,但至少傳回一個字節的數據。
 

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

備註

這個方法會將目標虛擬位址空間中記憶體的內容填滿緩衝區。

此方法可能會在擷取數據時參考記憶體數據的快取。 如果數據是變動性的,例如記憶體對應硬體狀態,請改用 ReadVirtualUncached

讀取包含指標的記憶體時,這些指標適用於目標的虛擬位址空間,而不是引擎的 。 例如,如果數據結構包含字串,可能需要對此方法進行第二次呼叫,才能讀取字串的內容。

規格需求

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

另請參閱

IDebugDataSpaces

IDebugDataSpaces2

IDebugDataSpaces3

IDebugDataSpaces4

ReadVirtualUncached

WriteVirtual