IDebugControl2::SetInterrupt メソッド (dbgeng.h)
SetInterrupt メソッドは、ユーザー割り込みを登録するか、デバッガーに中断します。
構文
HRESULT SetInterrupt(
[in] ULONG Flags
);
パラメーター
[in] Flags
登録する割り込みの種類を指定します。 フラグ は、次の表に示す値のいずれかを受け取ることができます。
価値 | 形容 |
---|---|
DEBUG_INTERRUPT_ACTIVE |
ターゲットが実行されている場合、エンジンはデバッガーへの中断を要求します。 この要求はタイムアウトになる可能性があります。詳細については、「解説」セクションを参照してください。
それ以外の場合、ターゲットが中断されると、エンジンはユーザー割り込みを登録します。 |
DEBUG_INTERRUPT_PASSIVE | エンジンによってユーザー割り込みが登録されます。 |
DEBUG_INTERRUPT_EXIT |
現在、WaitForEvent 呼び出しが実行されている場合、エンジンはその呼び出しを強制的に返します。 ターゲットで実行を引き起こしているデバッガー コマンドがある場合 (たとえば、g (Go) と p (ステップ)- エンジンはそれらを強制的に完了します。 これにより、デバッガーに中断が強制されないため、ターゲットが中断されない可能性があります。 その場合、WaitForEvent 呼び出しはE_PENDINGを返します。
それ以外の場合は、ターゲットが中断されたときに、ユーザー割り込みを登録します。 |
戻り値
このメソッドは、エラー値を返す場合もあります。 詳細については 戻り値の を参照してください。
リターン コード | 形容 |
---|---|
|
メソッドが成功しました。 |
備考
このメソッドは、任意のスレッドからいつでも呼び出すことができます。 割り込みが登録されると、このメソッドはすぐに返されます。
Flags がDEBUG_INTERRUPT_ACTIVEされ、割り込みがタイムアウトすると、エンジンによって合成例外イベントが生成されます。 このイベントは、イベント コールバックの IDebugEventCallbacks::Exception メソッドに送信されます。 SetInterruptTimeout を使用して割り込みタイムアウト設定できる時間。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | デスクトップ |
ヘッダー | dbgeng.h (Dbgeng.h を含む) |
関連項目
GetInterrupt を する
GetInterruptTimeout を する
IDebugControl の
IDebugControl2 の
IDebugControl3 の
SetInterruptTimeout の