资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

C#屏蔽由于崩溃弹出的windows异常弹框

windows应用程序(包括控制台)在运行时如果出现了未处理的异常会出项windows的异常提示框 

创新互联主要从事网站设计、做网站、网页设计、企业做网站、公司建网站等业务。立足成都服务波密,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

C# 屏蔽由于崩溃弹出的windows异常弹框

     这个提示框在平时并没有什么影响。但是当我们使用启动的是一个服务器程序时,我们的要求应该是尽可能快的重启应用。

但是由于这个提示框导致我们的第三方守护程序并不知道应用已经崩溃退出,导致我们无法及时处理。     

     所以,我们应该在程序启动时再做一个处理,即添加未处理异常的事件     

            C#:   AppDomain.CurrentDomain.UnhandledException

         解释: 此事件提供通知未捕获的异常。 它允许应用程序来记录有关异常的信息,系统默认处理程序将异常报告给用户和终止应用程序之前。 如果提供了有关状态的应用程序的足够信息,可以采取其他措施-例如保存更高版本的恢复的程序数据。 建议小心,因为不处理异常时,可能会损坏程序数据。          

          在该事件中我们可以从容的捕获异常、记录然后退出重启。 

          示例代码: 

class Program
    {
       static int m_count = 0;
       static void Main(string[] args)
       {
           AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
           while(true)
           {
              Func1();
              Thread.Sleep(10);
           }
       }
       private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
       {
           Console.WriteLine("有未经处理的异常,程序即将退出!");
           Thread.Sleep(5000);
           Environment.Exit(-1);
       }
       static void Func1()
       {
           m_count++;
           if(m_count > 100)
           {
              throw new Exception();
           }
       }
    } 

         结果:         

C# 屏蔽由于崩溃弹出的windows异常弹框

总结

以上所述是小编给大家介绍的C# 屏蔽由于崩溃弹出的windows异常弹框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!


名称栏目:C#屏蔽由于崩溃弹出的windows异常弹框
文章来源:http://cdkjz.cn/article/jhscdp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220