Globale Ausnahmebehandlung für WinForms Kontrolle

stimmen
33

Wenn auf 1.1 Projekte ASP.NET arbeiten Früher habe ich immer die Global.asax alle Fehler zu fangen. Ich suche nach einer ähnlichen Art und Weise alle Ausnahmen in einer Windows Forms zu fangen Benutzersteuerung, die eine gehostete IE Kontrolle endet als. Was ist der richtige Weg, um so etwas gehen zu tun?

Veröffentlicht am 05/08/2008 um 21:05
quelle vom benutzer
In anderen Sprachen...                            


5 antworten

stimmen
24

Sie müssen die Handhabung System.Windows.Forms.Application.ThreadExceptionEreignis für Windows Forms. Dieser Artikel hat mir wirklich geholfen: http://bytes.com/forum/thread236199.html .

Beantwortet am 05/08/2008 um 21:11
quelle vom benutzer

stimmen
11

Derzeit in meinem WinForms - Anwendung Ich habe Handler für Application.ThreadException, wie oben, aber auchAppDomain.CurrentDomain.UnhandledException

Die meisten Ausnahmen kommen über den ThreadExceptionHandler, aber die AppDomain eines gefangen hat auch ein paar in meiner Erfahrung

Beantwortet am 05/08/2008 um 21:42
quelle vom benutzer

stimmen
6

Wenn Sie VB.NET verwenden, können Sie ganz bequem ApplicationEvents.vb anzapfen. Diese Datei kommt kostenlos mit einem Projekt VB.NET WinForms und enthält ein Verfahren für den Umgang mit nicht behandelten Ausnahmen .

Um zu dieser geschickten Datei zu erhalten, ist es „Projekteigenschaften >> Anwendung >> Anwendungsereignisse“

Wenn Sie nicht VB.NET verwenden, dann ja, es Handhabung Application.ThreadException .

Beantwortet am 05/08/2008 um 21:16
quelle vom benutzer

stimmen
3

Behandeln von Global Ausnahmen ...

Windows-Anwendung

System.Windows.Forms.Application.ThreadException Veranstaltung

Allgemein Verwendet in Main - Methode. Siehe MSDN Thema Exception

Asp.Net

System.Web.HttpApplication.Error Veranstaltung

Normalerweise in Global.asax - Datei verwendet. Siehe MSDN Global.asax Globaler Handlers

Konsolenanwendung

System.AppDomain.UnhandledException Veranstaltung

Im Allgemeinen in Main - Methode verwendet. Siehe MSDN UnhandledException

Beantwortet am 19/05/2015 um 11:36
quelle vom benutzer

stimmen
2

Code von MSDN: http://msdn.microsoft.com/en-us/library/system.appdomain.unhandledexception.aspx?cs-save-lang=1&cs-lang=vb#code-snippet-2

Sub Main()
  Dim currentDomain As AppDomain = AppDomain.CurrentDomain
  AddHandler currentDomain.UnhandledException, AddressOf MyHandler

  Try 
     Throw New Exception("1")
  Catch e As Exception
     Console.WriteLine("Catch clause caught : " + e.Message)
     Console.WriteLine()
  End Try 

  Throw New Exception("2")
End Sub 

Sub MyHandler(sender As Object, args As UnhandledExceptionEventArgs)
  Dim e As Exception = DirectCast(args.ExceptionObject, Exception)
  Console.WriteLine("MyHandler caught : " + e.Message)
  Console.WriteLine("Runtime terminating: {0}", args.IsTerminating)
End Sub 
Beantwortet am 27/09/2013 um 22:55
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more