Frage

Ein C # Programm wird aufgerufen durch:

Application.Run (new formClass ());

Ich möchte einen try / catch um die ganze Sache keine abgefangene Ausnahmen zu stoppen setzen. Als ich es, um diese Run-Methode setzte, sind Ausnahmen nicht gefangen; Steuerung nur hier gibt, wenn das Programm nach einer abgefangene Ausnahme beendet wird.

Wo kann ich setzen try / catch das ganze Programm zu decken? Dank!

War es hilfreich?

Lösung

Windows Form der nicht behandelte Ausnahmen abfangen Hook-up der AppDomain.UnhandledException und Application.ThreadException Ereignisse.

Von Interesse: unerwartete Fehler in Managed Applications

Andere Tipps

Im Grunde können Sie nicht alle Ausnahmen abfangen, wenn das Standard-CLR-Hosting-Verfahren. Zeitraum. Dies liegt daran, das AppDomain.UnhandledException Ereignis eine Benachrichtigung nur , können Sie die Ausnahme nicht umgehen (was bedeutet, dass Sie die Anwendung nicht verhindern können, nach der Verarbeitung der Meldung beendet wird).

Sie können jedoch alle Ausnahmen in dem UI-Thread einer WinForms-Anwendung fangen und zu handhaben, indem es seine Application.ThreadException Handler (und steuert das Verhalten über

scroll top