次の方法で共有


IDebugRegisters2::SetValues2 メソッド (dbgeng.h)

SetValues2 メソッドは、ターゲットのいくつかの レジスタの値設定します。

構文

HRESULT SetValues2(
  [in]           ULONG        Source,
  [in]           ULONG        Count,
  [in, optional] PULONG       Indices,
  [in]           ULONG        Start,
  [in]           PDEBUG_VALUE Values
);

パラメーター

[in] Source

クエリを実行するレジスタ ソースを指定します。

使用可能な値を次の表に示します。

価値 ソースの登録
DEBUG_REGSRC_DEBUGGEE ターゲットからレジスタ情報をフェッチします。
DEBUG_REGSRC_EXPLICIT 現在の明示的な 登録コンテキストからレジスタ情報をフェッチします。
DEBUG_REGSRC_FRAME 現在のスコープのレジスタ コンテキストからレジスタ情報をフェッチします。
注意 スタック アンワインドでは、レジスタ コンテキストの正確な更新が保証されないため、スコープ フレームのレジスタ コンテキストがすべてのケースで正確であるとは限りません。
 

[in] Count

値を設定するレジスタの数を指定します。

[in, optional] Indices

値を設定するレジスタのインデックスを含む配列を指定します。 この配列内の要素の数は、count です。 インデックス が NULL 場合は、代わりに開始 使用されます。

[in] Start

インデックス が NULL 場合、レジスタはこのインデックスから連続して設定されます。 それ以外の場合は無視されます。

[in] Values

レジスタを設定する値を含む配列。 この配列が保持する要素の数は、count です。 このパラメーター型の説明については、DEBUG_VALUE を参照してください。

戻り値

この一覧には、発生する可能性のあるすべてのエラーが含まれているわけではありません。 発生する可能性のあるエラーの一覧については、「HRESULT 値 を参照してください。

リターン コード 形容
S_OK
メソッドが成功しました。

備考

エンジンは、 の値をレジスタの型にキャストするために最善を尽くします。この 変換 は CoerceValueによって実行される変換と同じです。 値がレジスタが保持できる値より大きい場合、下位ビットは削除されます。 必要に応じて、浮動小数点変換と整数変換も実行されます。

戻り値がS_OKされていない場合は、一部のレジスタがまだ設定されている可能性があります。

サブ登録が変更されると、それを含むレジスタも変更されます。

SetValues メソッドは このメソッドと同じタスクを実行しますが、常にターゲットをレジスタ ソースとして使用します。

IDebugRegisters インターフェイスおよびその他のレジスタ関連メソッドの概要については、「Registers」を参照してください。

必要条件

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

関連項目

IDebugRegisters2

SetValue

SetValues