IDebugDataSpaces2::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,則不會傳回此資訊。
傳回值
傳回碼 | 描述 |
---|---|
|
方法成功。 BytesRead 可能小於 BufferSize,但至少傳回一個字節的數據。 |
這個方法也可以傳回錯誤值。 如需詳細資訊,請參閱 傳回值。
言論
這個方法會將目標虛擬位址空間中的記憶體內容填入緩衝區。
此方法可能會在擷取數據時參考記憶體數據的快取。 如果數據不穩定,例如記憶體對應硬體狀態,請改用 ReadVirtualUncached。
讀取包含指標的記憶體時,這些指標適用於目標的虛擬位址空間,而不是引擎的 。 例如,如果數據結構包含字串,可能需要對這個方法進行第二次呼叫,才能讀取字串的內容。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | dbgeng.h (include Dbgeng.h) |