Thursday 11 May 2006

Globalna obsługa wyjątków w .Net

Mały,ale użyteczny kawałek kodu:


AppDomain.CurrentDomain.UnhandledException +=
delegate(object o, UnhandledExceptionEventArgs args)
{Console.WriteLine(args.ExceptionObject.ToString());};

Do czego to służy? Otóż zdarzenie UnhandledException wywoływane jest przy każdym nieobsłużonym przez aplikację wyjątku. Można to wykorzystać by zapisać błąd w dzienniku systemowym czy automatycznie zgłosić go obsłudze klienta / developerom. Nie można w ten sposób usunąć wyjątku - zdarzenie jest wywoływane już po 'wysypaniu' się wątku, w którym wystąpił wyjątek. Jeśli wolisz gotowe rozwiązania, polecam Unhandled Exception Manager z codeproject.

No comments:

Post a Comment