次の方法で共有


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
メソッドは正常に実行されました。 BytesReadBufferSize より小さいが、少なくとも 1 バイトのデータが返された可能性があります。
 

このメソッドは、エラー値を返すこともできます。 詳細については、「 戻り値 」を参照してください。

注釈

このメソッドは、ターゲットの仮想アドレス空間内のメモリの内容をバッファーに格納します。

このメソッドは、データを取得するときにメモリ データのキャッシュを参照する場合があります。 メモリ マップされたハードウェアの状態など、データが揮発性の場合は、代わりに ReadVirtualUncached を使用します。

ポインターを含むメモリを読み取る場合、これらのポインターは、エンジンではなくターゲットの仮想アドレス空間用です。 たとえば、データ構造に文字列が含まれている場合、文字列の内容を読み取るために、このメソッドの 2 回目の呼び出しが必要になる場合があります。

要件

要件
対象プラットフォーム デスクトップ
Header dbgeng.h (Dbgeng.h を含む)

こちらもご覧ください

IDebugDataSpaces

IDebugDataSpaces2

IDebugDataSpaces3

IDebugDataSpaces4

ReadVirtualUncached

WriteVirtual