ICorDebugManagedCallback2::Exception メソッド
例外ハンドラーの検索が開始されたことをデバッガーに通知します。
構文
HRESULT Exception (
[in] ICorDebugAppDomain *pAppDomain,
[in] ICorDebugThread *pThread,
[in] ICorDebugFrame *pFrame,
[in] ULONG32 nOffset,
[in] CorDebugExceptionCallbackType dwEventType,
[in] DWORD dwFlags
);
パラメーター
pAppDomain
[in]例外がスローされたスレッドを含むアプリケーション doメイン を表す ICorDebugAppDoメイン オブジェクトへのポインター。
pThread
[in]例外がスローされたスレッドを表す ICorDebugThread オブジェクトへのポインター。
pFrame
[in]パラメーターによって dwEventType
決定されるフレームを表す ICorDebugFrame オブジェクトへのポインター。 詳細については、「解説」セクションの表を参照してください。
nOffset
[in]パラメーターによって決定されるオフセットを指定する dwEventType
整数。 詳細については、「解説」セクションの表を参照してください。
dwEventType
[in]この例外コールバックの型を指定する CorDebugExceptionCallbackType 列挙の値。
dwFlags
[in]例外に関する追加情報を 指定する CorDebugExceptionFlags 列挙体の値
解説
Exception
コールバックは、例外処理プロセスの検索フェーズ中にさまざまな時点で呼び出されます。 つまり、例外のアンワインド中に複数回呼び出すことができます。
処理されている例外は、pThread
パラメーターによって参照されている ICorDebugThread オブジェクトから取得できます。
特定のフレームとオフセットは、dwEventType
パラメーターによって次のように決定されます。
dwEventType の値 |
pFrame の値 |
nOffset の値 |
---|---|---|
DEBUG_EXCEPTION_FIRST_CHANCE | 例外をスローしたフレーム。 | フレーム内の命令ポインター。 |
DEBUG_EXCEPTION_USER_FIRST_CHANCE | スローされた例外の位置に最も近いユーザー コード フレーム。 | フレーム内の命令ポインター。 |
DEBUG_EXCEPTION_CATCH_HANDLER_FOUND | catch ハンドラーを含むフレーム。 | catch ハンドラーの先頭の共通中間言語 (CIL) オフセット。 |
DEBUG_EXCEPTION_UNHANDLED | NULL | 未定義です。 |
必要条件
:「システム要件」を参照してください。
ヘッダー: CorDebug.idl、CorDebug.h
ライブラリ: CorGuids.lib
.NET Framework のバージョン: 2.0 以降で使用可能
関連項目
.NET