WindowsFormsApplicationBase.UnhandledException Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Kommt vor, wenn in der Anwendung eine unbehandelte Ausnahme auftritt.
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
Ereignistyp
Beispiele
In diesem Beispiel wird das My.Application.UnhandledException
-Ereignis verwendet, um alle nicht behandelten Ausnahmen zu protokollieren.
Sie müssen den Code im Code-Editor-Fenster für Anwendungsereignisse eingeben. Um auf dieses Fenster zuzugreifen, befolgen Sie das Verfahren im Abschnitt Hinweise dieses Themas. Weitere Informationen finden Sie unter Application Page, Project Designer (Visual Basic).
Da das UnhandledException
Ereignis nicht ausgelöst wird, wenn ein Debugger an die Anwendung angefügt wird, müssen Sie dieses Beispiel außerhalb der integrierten Entwicklungsumgebung von Visual Studio ausführen.
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
Hinweise
Eine Anwendung löst das UnhandledException
-Ereignis aus, wenn eine nicht behandelte Ausnahme auftritt. Dieses Ereignis ist Teil des Visual Basic-Anwendungsmodells. Weitere Informationen finden Sie unter Übersicht über das Visual Basic-Anwendungsmodell.
Sie können die Exception -Eigenschaft des e
Parameters verwenden, um auf die nicht behandelte Ausnahme zuzugreifen, die dieses Ereignis verursacht hat.
Sie können die ExitApplication -Eigenschaft des e
Parameters verwenden, um zu steuern, ob die Anwendung beendet wird.
ExitApplication ist standardmäßig True
. Daher wird die Anwendung nach Abschluss des UnhandledException
Ereignishandlers beendet. Sie können den Wert im UnhandledException
Ereignishandler auf False
festlegen, um die Ausführung der Anwendung aufrechtzuerhalten und in einen Wartezustand zurückzukehren.
Der Code für den UnhandledException
Ereignishandler wird in der ApplicationEvents.vb-Datei gespeichert, die standardmäßig ausgeblendet ist.
So greifen Sie auf das Code-Editor-Fenster für Anwendungsereignisse zu |
1. Klicken Sie im Projektmappen-Explorer auf Eigenschaften im Menü Projekt . 2. Klicken Sie auf die Registerkarte Anwendung. 3. Klicken Sie auf die Schaltfläche Anwendungsereignisse anzeigen , um den Code-Editor zu öffnen. |
Weitere Informationen finden Sie unter Application Page, Project Designer (Visual Basic).
Hinweis
Der Visual Basic-Compiler verhindert, dass Anwendungen, die für das Debuggen erstellt wurden, dieses Ereignis auslösen, damit ein Debugger die nicht behandelten Ausnahmen behandeln kann. Dies bedeutet, dass der Ereignishandler nicht aufgerufen wird, wenn Sie Ihre Anwendung testen, UnhandledException
indem Sie sie unter dem Debugger der integrierten Entwicklungsumgebung von Visual Studio ausführen. Weitere Informationen zum Erstellen von Anwendungen zum Debuggen finden Sie unter /debug (Visual Basic).
Aufgaben
In der folgenden Tabelle sind Beispiele für Aufgaben aufgeführt, die das My.Application.UnhandledException
Ereignis betreffen.
Beschreibung | Siehe |
---|---|
Protokollieren nicht behandelter Ausnahmen | How to: Protokollieren von Ausnahmen |
Verfügbarkeit nach Projekttyp
Projekttyp | Verfügbar |
---|---|
Windows Forms-Anwendung | Ja |
Klassenbibliothek | Nein |
Konsolenanwendung | Nein |
Windows Forms-Steuerelementbibliothek | Nein |
Websteuerelementbibliothek | Nein |
Windows-Dienst | Nein |
Website | Nein |