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异常弹框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
上一篇:C#自定义事件模拟风吹草摇摆效果
栏 目:C#教程
下一篇:C#字符串自增自减算法详解
本文地址:https://www.xiuzhanwang.com/a1/C_jiaocheng/5546.html
您可能感兴趣的文章
- 01-10C#数据库操作的用法
- 01-10C#和Java有什么区别和联系
- 01-10C#串口编程实例代码
- 01-10c#图片上传和显示的实现方法
- 01-10C#汉字转拼音实例(支持多音字)
- 01-10C#实现十五子游戏
- 01-10C# for循环的经典案例集锦
- 01-10C#实现谷歌翻译API示例代码
- 01-10C# 下载文件 删除文件 写入文本的实例
- 01-10用c#实现简易的计算器功能实例代码
阅读排行
本栏相关
- 01-10C#通过反射获取当前工程中所有窗体并
- 01-10关于ASP网页无法打开的解决方案
- 01-10WinForm限制窗体不能移到屏幕外的方法
- 01-10WinForm绘制圆角的方法
- 01-10C#实现txt定位指定行完整实例
- 01-10WinForm实现仿视频播放器左下角滚动新
- 01-10C#停止线程的方法
- 01-10C#实现清空回收站的方法
- 01-10C#通过重写Panel改变边框颜色与宽度的
- 01-10C#实现读取注册表监控当前操作系统已
随机阅读
- 04-02jquery与jsp,用jquery
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10C#中split用法实例总结
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10delphi制作wav文件的方法
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-11ajax实现页面的局部加载
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 01-10SublimeText编译C开发环境设置