次の方法で共有


IDebugEventCallbacks::ChangeDebuggeeState メソッド (dbgeng.h)

ChangeDebuggeeState コールバック メソッドは、ターゲットへの変更を行うか検出したときに、エンジンによって呼び出されます。

構文

HRESULT ChangeDebuggeeState(
  [in] ULONG   Flags,
  [in] ULONG64 Argument
);

パラメーター

[in] Flags

ターゲットに加えられた変更の種類を指定します。 Flags は、次のいずれかの値を受け取る場合があります。

価値 形容
DEBUG_CDS_ALL ターゲットの一般的な変更が発生しました。 たとえば、ターゲットが実行されているか、エンジンがターゲットにアタッチされたばかりです。
DEBUG_CDS_REGISTERS ターゲットのプロセッサ レジスタが変更されました。
DEBUG_CDS_DATA ターゲットのデータ領域が変更されました。
DEBUG_CDS_REFRESH デバッガー ウィンドウを更新するように GUI クライアントに通知します。

[in] Argument

ターゲットの変更に関する追加情報を提供します。 引数 値の解釈は、Flagsの値によって異なります。

DEBUG_CDS_ALL
引数 の値は 0 です。
DEBUG_CDS_REGISTERS
1 つのレジスタが変更された場合、引数 値はそのレジスタのインデックスです。 それ以外の場合、引数 の値 DEBUG_ANY_ID。
DEBUG_CDS_DATA
引数 の値は、変更されたデータ領域を指定します。 次の表に、引数 指定できる値を示します。
価値 形容
DEBUG_DATA_SPACE_VIRTUAL ターゲットの仮想メモリが変更されました。
DEBUG_DATA_SPACE_PHYSICAL ターゲットの物理メモリが変更されました。
DEBUG_DATA_SPACE_CONTROL ターゲットの制御メモリが変更されました。
DEBUG_DATA_SPACE_IO ターゲットの I/O ポートが入力または出力を受信しました。
DEBUG_DATA_SPACE_MSR ターゲットの Model-Specific レジスタ (MSR) が変更されました。
DEBUG_DATA_SPACE_BUS_DATA ターゲットのバス メモリが変更されました。
 
DEBUG_CDS_REFRESH
次の表に、引数 指定できる値を示します。
価値
DEBUG_CDS_REFRESH_EVALUATE
DEBUG_CDS_REFRESH_EXECUTE
DEBUG_CDS_REFRESH_EXECUTECOMMANDFILE
DEBUG_CDS_REFRESH_ADDBREAKPOINT
DEBUG_CDS_REFRESH_REMOVEBREAKPOINT
DEBUG_CDS_REFRESH_WRITEVIRTUAL
DEBUG_CDS_REFRESH_WRITEVIRTUALUNCACHED
DEBUG_CDS_REFRESH_WRITEPHYSICAL
DEBUG_CDS_REFRESH_WRITEPHYSICAL2
DEBUG_CDS_REFRESH_SETVALUE
DEBUG_CDS_REFRESH_SETVALUE2
DEBUG_CDS_REFRESH_SETSCOPE
DEBUG_CDS_REFRESH_SETSCOPEFRAMEBYINDEX
DEBUG_CDS_REFRESH_SETSCOPEFROMJITDEBUGINFO
DEBUG_CDS_REFRESH_SETSCOPEFROMSTOREDEVENT
DEBUG_CDS_REFRESH_INLINESTEP
DEBUG_CDS_REFRESH_INLINESTEP_PSEUDO
 

戻り値

戻り値は、リモート プロシージャ 呼び出しエラーを示す場合を除き、エンジンによって無視されます。この場合、この IDebugEventCallbacks オブジェクトが登録されているクライアントは無効になります。

備考

DEBUG_EVENT_CHANGE_DEBUGGEE_STATE フラグ IDebugEventCallbacks::GetInterestMask によって返されるマスクにDEBUG_EVENT_CHANGE_DEBUGGEE_STATE フラグが設定されている場合にのみ、エンジンは ChangeDebuggeeState を呼び出します。

イベントの処理の詳細については、「監視イベントの」を参照してください。 レジスタやデータ空間など、ターゲットのメモリの管理については、「メモリ アクセス」を参照してください。 ターゲットの仮想メモリと物理メモリの詳細については、「仮想メモリと物理メモリの を参照してください。 ターゲットの制御メモリ、I/O ポート、MSR、バス メモリの詳細については、「その他のデータスペースを参照してください。

必要条件

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