经常有客户抱怨程序遇到错误的时候程序就退出了,甚至来不及保存窗体的输入数据,如果是普通的搜索界面也就罢了,但如果客户是呼叫中心,问题就严重了.按道理,我们的程序员应该处理所有的异常,但有事实上做到的很难,因为出乎意料的情况太多了. 在这篇文章,我给大家介绍一下我的处理方法。 首先介绍相应的C#相关知识: System.Windows.Forms.Application类 提供 static 方法和属性以管理应用程序,例如启动和停止应用程序、处理 Windows 消息的方法和获取应用程序信息的属性。
在发生未捕获线程异常时发生。
指示应用程序如何响应未处理的异常。 SetUnhandledExceptionMode(UnhandledExceptionMode) SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean)
定义 Windows 窗体应用程序应在何处发送未处理的异常。 public enum UnhandledExceptionMode { Automatic, //将所有异常都传送到 ThreadException 处理程序,除非应用程序的配置文件指定了其他位置。 ThrowException, //从不将异常传送到 ThreadException 处理程序。忽略应用程序配置文件。 CatchException //始终将异常传送到 ThreadException 处理程序。忽略应用程序配置文件。 }
/// <summary> static void Application_ThreadException(object sender, ThreadExceptionEventArgs e) |
|