My.Application.UnhandledException 事件
更新: 2008 年 7 月
發生於應用程式遇到未處理的例外狀況 (Exception) 時。
' Usage
Public Sub Me_UnhandledException( _
ByVal sender As Object, _
ByVal e As UnhandledExceptionEventArgs _
) Handles Me.UnhandledException
End Sub
' Declaration
Public Event UnhandledException( _
ByVal sender As Object, _
ByVal e As UnhandledExceptionEventArgs _
)
參數
sender
引發事件的 Object。e
包含未處理之例外狀況和其他資訊的 UnhandledExceptionEventArgs 物件。
備註
當應用程式遇到未處理的例外狀況時,會產生 UnhandledException 事件。這個事件是 Visual Basic 應用程式模型的一部分。如需詳細資訊,請參閱 Visual Basic 應用程式模型概觀。
您可以使用 e 參數的 Exception 屬性 (Property),存取造成此事件之未處理的例外狀況。
您可以使用 e 參數的 ExitApplication 屬性,控制應用程式是否結束。依照預設,ExitApplication 為 True,因此應用程式會在完成 UnhandledException 事件處理常式之後結束。您可以在 UnhandledException 事件處理常式中將此值設為 False,使應用程式保持在執行中,並讓它回到等待狀態。
UnhandledException 事件處理常式的程式碼儲存在 ApplicationEvents.vb 檔中,檔案預設為隱藏檔。
若要存取應用程式事件的程式碼編輯器視窗:
在 [方案總管] 中選取了專案之後,請在 [專案] 功能表,按一下 [屬性]。
按一下 [應用程式] 索引標籤。
按一下 [檢視應用程式事件] 按鈕,開啟 [程式碼編輯器]。
如需詳細資訊,請參閱 HOW TO:處理應用程式事件 (Visual Basic)。
![]() |
---|
Visual Basic 編譯器 (Compiler) 不讓建置來進行偵錯的應用程式產生此事件,以允許偵錯工具能處理未處理的例外狀況。這表示,如果您是在 Visual Studio Integrated Development Environment 偵錯工具下執行它以測試應用程式,將不會呼叫 UnhandledException 事件處理常式。如需建置用於進行偵錯之應用程式的詳細資訊,請參閱 /debug (Visual Basic)。 |
工作
下列表格列出包含 My.Application.UnhandledException 事件的工作範例。
若要 |
請參閱 |
---|---|
使用 Visual Basic 應用程式模型所提供的事件執行程式碼 |
|
記錄未處理的例外狀況 |
範例
此範例會使用 My.Application.UnhandledException 事件,記錄任何未處理的例外狀況。
Private Sub MyApplication_UnhandledException( _
ByVal sender As Object, _
ByVal e As Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs _
) Handles Me.UnhandledException
My.Application.Log.WriteException(e.Exception, _
TraceEventType.Critical, _
"Unhandled Exception.")
End Sub
您必須在應用程式事件的 [程式碼編輯器] 視窗中輸入程式碼。若要存取這個視窗,請依照此主題之「註解」內容中所述的程序進行。如需詳細資訊,請參閱 HOW TO:處理應用程式事件 (Visual Basic)。
因為將偵錯工具附加至應用程式時不會產生 UnhandledException 事件,因此您需要在 Visual Studio Integrated Development Environment 以外執行此範例。
需求
命名空間 (Namespace):Microsoft.VisualBasic.ApplicationServices
類別︰WindowsFormsApplicationBase
組件:Visual Basic 執行階段程式庫 (在 Microsoft.VisualBasic.dll 中)
依專案類型的可用性
專案類型 |
是否可用 |
---|---|
Windows 應用程式 |
是 |
類別庫 |
否 |
主控台應用程式 |
否 |
Windows 控制項程式庫 |
否 |
Web 控制項程式庫 |
否 |
Windows 服務 |
否 |
網站 |
否 |
使用權限
下列使用權限可能為必要:
使用權限 |
描述 |
---|---|
控制為這個事件加入事件處理常式的能力。關聯的列舉型別:SecurityPermissionFlag.ControlAppDomain。 |
請參閱
概念
參考
Microsoft.VisualBasic.ApplicationServices.UnhandledExceptionEventArgs
變更記錄
日期 |
記錄 |
原因 |
---|---|---|
2008 年 7 月 |
修訂有關「備註」一節中設定 UnhandledException 事件處理常式的資訊。 |
內容 Bug 修正。 |