Catch Application Exceptions in a Windows Forms Application
时间:2014-04-27 21:10:16
收藏:0
阅读:907
You need to handle
the System.Windows.Forms.Application.ThreadException
event
for Windows Forms. This article really helped me: http://bytes.com/forum/thread236199.html.
Application.ThreadException += new ThreadExceptionEventHandler(MyCommonExceptionHandlingMethod) private static void MyCommonExceptionHandlingMethod(object sender, ThreadExceptionEventArgs t) { //Exception handling... }
AppDomain.UnhandledException and Application.ThreadException.
http://msdn.microsoft.com/en-us/library/system.appdomain.unhandledexception.aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-2
using System; using System.Security.Permissions; public class Example { [SecurityPermission(SecurityAction.Demand, Flags=SecurityPermissionFlag.ControlAppDomain)] public static void Main() { AppDomain currentDomain = AppDomain.CurrentDomain; currentDomain.UnhandledException += new UnhandledExceptionEventHandler(MyHandler); try { throw new Exception("1"); } catch (Exception e) { Console.WriteLine("Catch clause caught : {0} \n", e.Message); } throw new Exception("2"); } static void MyHandler(object sender, UnhandledExceptionEventArgs args) { Exception e = (Exception) args.ExceptionObject; Console.WriteLine("MyHandler caught : " + e.Message); Console.WriteLine("Runtime terminating: {0}", args.IsTerminating); } }
Catch Application Exceptions in a Windows Forms Application,码迷,mamicode.com
评论(0)