次の方法で共有


ICorDebugManagedCallback2::Exception メソッド

例外ハンドラーの検索が開始されたことをデバッガーに通知します。

構文

HRESULT Exception (
    [in] ICorDebugAppDomain   *pAppDomain,
    [in] ICorDebugThread      *pThread,
    [in] ICorDebugFrame       *pFrame,
    [in] ULONG32              nOffset,
    [in] CorDebugExceptionCallbackType dwEventType,
    [in] DWORD                dwFlags
);

パラメーター

pAppDomain [in]例外がスローされたスレッドを含むアプリケーション ドメインを表す ICorDebugAppDomain オブジェクトへのポインター。

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 ヌル 未定義。

Requirements

プラットフォーム:サポートされている .NET オペレーティング システムを参照してください。

ヘッダ: CorDebug.idl、CorDebug.h

図書館: CorGuids.lib

.NET のバージョン: .NET Framework 2.0 以降で使用可能

こちらも参照ください