当前位置: 首页 > 编程笔记 >

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

訾旭
2023-03-14
本文向大家介绍C# 屏蔽由于崩溃弹出的windows异常弹框,包括了C# 屏蔽由于崩溃弹出的windows异常弹框的使用技巧和注意事项,需要的朋友参考一下

windows应用程序(包括控制台)在运行时如果出现了未处理的异常会出项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异常弹框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • 问题内容: 我正在使用Google让您直接从其网站下载的日食ADT捆绑包。我在Ubuntu 13.10中使用Oracle Java7。我的问题是,一旦显示自动完成弹出窗口,Eclipse就会崩溃(冻结)。这似乎是一个已报告的错误https://bugs.eclipse.org/bugs/show_bug.cgi?id=377367,但我找不到解决该问题的方法。现在我根本无法发展。有谁解决了这个问题

  • 问题内容: 这是一个普遍的问题,是从特定情况提出的,但我想获得一个一般性的答案,说明如何处理以下情况: 背景: 我有一个应用程序,它在使用一些第三方库(广告网络提供商SDK-特别是- 基于SDK )。该库的功能对于应用程序并不重要。该库创建一个或多个后台工作线程。有时(非常罕见的情况),这些后台线程之一存在未处理的异常,导致应用程序崩溃。我想忽略由该库引起的所有异常,无论其原因如何:在最坏的情况下

  • flutter中的AlertDialog有一个奇怪的问题来取消对话框。我使用下面的代码片段来关闭flutter文档中提到的对话框。 但显示它是如何工作的,使应用程序进入非活动模式,并变成黑屏窗口。要让它再次工作,我必须干掉这个应用程序,然后重新启动。 下面是flutter中alertdialog的完整代码 我还注意到它适用于一个按钮“Call”,没有任何问题,但不适用于取消警报对话框,正如您在两个

  • 使用指南 - 数据报告 - 流量分析 - 客户版屏蔽异常IP与访客 做推广投放的客户会比较了解,网站经常会有一些异常的IP/访客点击网站的广告,如同行、水军、推销、软件攻击等,给网站带来无效的花费。对于这种情况,您可以使用百度统计的屏蔽功能,对这些异常IP/访客进行广告屏蔽,使您网站的搜索广告不对这些IP/访客展示,进而节省无效消费。 百度统计的屏蔽功能仅支持推广账号,屏蔽的入口在实时访客报告中。

  • 我有一个硬件设备,我用TCP/IP与它通信。 您能对Windows或Java或任何其他导致此问题的相关设置进行映像吗?

  • 问题内容: 下面是我的AutoIt脚本(UI3_Authentication.au3),用于处理Windows身份验证弹出窗口。 以下是我对上述AutoIt exe文件的Selenium代码调用。 当我运行上述Selenium文件时,它将打开页面并弹出身份验证。但这不是在插入用户名和密码。它等待用户输入。 问题答案: 我解决了 其实这是我的坏事。以前,我的代码是这样的: 我在get()之前添加了a