WindowsFormsApplicationBase.UnhandledException イベント

定義

ハンドルされない例外がアプリケーションで生じたときに発生します。Occurs when the application encounters an unhandled exception.

public:
 event Microsoft::VisualBasic::ApplicationServices::UnhandledExceptionEventHandler ^ UnhandledException;
public event Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventHandler UnhandledException;
member this.UnhandledException : Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventHandler 
Public Custom Event UnhandledException As UnhandledExceptionEventHandler 

イベントの種類

UnhandledExceptionEventHandler

この例では、イベントを使用して、 My.Application.UnhandledException 未処理の例外をログに記録します。This example uses the My.Application.UnhandledException event to log any unhandled exceptions.

アプリケーションイベントのコードエディターウィンドウにコードを入力する必要があります。You must enter the code in the Code Editor window for application events. このウィンドウにアクセスするには、このトピックの「解説」に記載されている手順に従います。To access this window, follow the procedure found in this topic's Remarks section. 詳細については、「[アプリケーション] ページ (プロジェクト デザイナー) (Visual Basic)」を参照してください。For more information, see Application Page, Project Designer (Visual Basic).

UnhandledExceptionデバッガーがアプリケーションにアタッチされている場合、イベントは発生しないため、この例を Visual Studio 統合開発環境の外部で実行する必要があります。Because the UnhandledException event is not raised when a debugger is attached to the application, you have to run this example outside the Visual Studio Integrated Development Environment.

Private Sub MyApplication_UnhandledException(
    sender As Object,
    e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs
) Handles Me.UnhandledException

    My.Application.Log.WriteException(e.Exception,
        TraceEventType.Critical,
        "Unhandled Exception.")
End Sub

注釈

アプリケーションは、 UnhandledException ハンドルされない例外が発生したときにイベントを発生させます。An application raises the UnhandledException event when it encounters an unhandled exception. このイベントは、Visual Basic アプリケーションモデルの一部です。This event is part of the Visual Basic Application model. 詳細については、「 Visual Basic アプリケーションモデルの概要」を参照してください。For more information, see Overview of the Visual Basic Application Model.

パラメーターのプロパティを使用して、 Exception e このイベントの原因となった未処理の例外にアクセスできます。You can use the Exception property of the e parameter to access the unhandled exception that caused this event.

パラメーターのプロパティを使用して、 ExitApplication e アプリケーションを終了するかどうかを制御できます。You can use the ExitApplication property of the e parameter to control whether the application exits. 既定では、ExitApplicationTrue です。By default, ExitApplication is True. そのため、アプリケーションは、イベントハンドラーの完了後に終了し UnhandledException ます。Therefore, the application exits after completing the UnhandledException event handler. イベントハンドラーで値をに設定して、 False UnhandledException アプリケーションの実行を維持し、待機状態に戻すことができます。You can set the value to False in the UnhandledException event handler to keep the application running, and have it return to a waiting state.

イベントハンドラーのコードは、 UnhandledException 既定では非表示になっている ApplicationEvents .vb ファイルに格納されます。The code for the UnhandledException event handler is stored in the ApplicationEvents.vb file, which is hidden by default.

アプリケーションイベントのコードエディターウィンドウにアクセスするにはTo access the Code Editor window for application events
1.ソリューションエクスプローラー でプロジェクトを選択した状態で、[プロジェクト] メニューの [プロパティ] をクリックします。1. With a project selected in Solution Explorer, click Properties on the Project menu.
2. [アプリケーション] タブをクリックします。2. Click the Application tab.
3. [ アプリケーションイベントの表示 ] ボタンをクリックして、コードエディターを開きます。3. Click the View Application Events button to open the Code Editor.

詳細については、「[アプリケーション] ページ (プロジェクト デザイナー) (Visual Basic)」を参照してください。For more information, see Application Page, Project Designer (Visual Basic).

注意

Visual Basic コンパイラは、デバッグ用に構築されたアプリケーションがこのイベントを発生させないようにし、デバッガーが未処理の例外を処理できるようにします。The Visual Basic compiler prevents applications that are built for debugging from raising this event, to enable a debugger to handle the unhandled exceptions. これは、Visual Studio 統合開発環境デバッガーで実行してアプリケーションをテストする場合、 UnhandledException イベントハンドラーが呼び出されないことを意味します。This means that if you are testing your application by running it under the Visual Studio Integrated Development Environment debugger, your UnhandledException event handler will not be called. デバッグ用のアプリケーションのビルドの詳細については、「 /debug (Visual Basic)」を参照してください。For more information about building applications for debugging, see /debug (Visual Basic).

タスクTasks

次の表に、イベントに関連するタスクの例を示し My.Application.UnhandledException ます。The following table lists examples of tasks that involve the My.Application.UnhandledException event.

終了To 解決方法については、See
未処理の例外をログに記録するLog unhandled exceptions 方法: 例外をログに記録するHow to: Log Exceptions

プロジェクトの種類別の可用性Availability by Project Type

プロジェクトの種類Project type 使用可能Available
Windows フォーム アプリケーションWindows Forms Application はいYes
クラス ライブラリClass Library いいえNo
コンソール アプリケーションConsole Application いいえNo
Windows フォーム コントロール ライブラリWindows Forms Control Library いいえNo
Web コントロール ライブラリWeb Control Library いいえNo
Windows サービスWindows Service いいえNo
Web サイトWeb Site いいえNo

適用対象

こちらもご覧ください