次の方法で共有


IDebugDataSpaces4::ReadMultiByteStringVirtual メソッド (dbgeng.h)

ReadMultiByteStringVirtual メソッドは、ターゲットから null で終わるマルチバイト文字列を読み取ります。

構文

HRESULT ReadMultiByteStringVirtual(
  [in]            ULONG64 Offset,
  [in]            ULONG   MaxBytes,
  [out, optional] PSTR    Buffer,
  [in]            ULONG   BufferSize,
  [out, optional] PULONG  StringBytes
);

パラメーター

[in] Offset

プロセスの仮想アドレス空間内の文字列の場所を指定します。

[in] MaxBytes

ターゲットから読み取る最大バイト数を指定します。

[out, optional] Buffer

ターゲットから文字列を受け取ります。 バッファー が NULL 場合、この情報は返されません。

メモ 返された文字列に続くバッファーの残りの部分は、このメソッドによって上書きされる可能性があります。
 

[in] BufferSize

バッファー バッファーのサイズを文字数で指定します。

[out, optional] StringBytes

文字列のサイズ (バイト単位) を受け取ります。 StringBytes が NULL 場合、この情報は返されません。

戻り値

リターン コード 形容
S_OK
メソッドが成功しました。
S_FALSE
メソッドが成功しました。 ただし、バッファー は文字列を保持するのに十分な大きさではなく、バッファー に収まるように文字列切り捨てられました。 Buffer に少なくとも 1 文字のスペースがある場合、切り捨てられた文字列は null で終了します。
E_INVALIDARG
ターゲットから MaxBytes 読み取った後、null ターミネータが見つかりませんでした。
 

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

備考

エンジンは、null ターミネータを探してターゲットから最大 MaxBytes を読み取ります。 文字列に BufferSize 文字を超える文字が含まれている場合は、バッファー に収まるように文字列切り捨てられます。

必要条件

要件 価値
ターゲット プラットフォーム デスクトップ
ヘッダー dbgeng.h (Dbgeng.h を含む)

関連項目

IDebugDataSpaces4

ReadMultiByteStringVirtualWide

ReadUnicodeStringVirtual