C# 屏蔽由于崩溃弹出的windows异常弹框
作者:孤风魅影 时间:2023-08-24 04:41:57
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异常弹框网站的支持!
来源:http://www.cnblogs.com/hrx-gufengmeiying/archive/2017/08/15/7365481.html
标签:c#,windows,弹框
0
投稿
猜你喜欢
Java如何解决发送Post请求报Stream closed问题
2021-12-12 04:20:10
15个顶级Java多线程面试题(附答案)
2023-11-24 01:53:44
Android中WebView无法后退和js注入漏洞的解决方案
2021-06-13 01:35:17
C#算法之实现阿姆斯特朗数
2022-08-22 17:57:24
Android 中HttpURLConnection与HttpClient使用的简单实例
2022-01-08 23:43:33
Android webview旋转屏幕导致页面重新加载问题解决办法
2021-10-18 17:07:35
计算一个Java对象占用字节数的方法
2022-06-14 18:05:21
Android实战教程第六篇之一键锁屏应用问题解决
2023-01-28 03:13:22
SpringBoot实现启动类的存放位置
2021-12-02 21:13:21
学习Java设计模式之观察者模式
2023-07-03 05:17:46
WPF实现文字粒子闪烁动画效果
2022-01-12 23:56:45
C#生成漂亮验证码完整代码类
2022-06-17 14:03:33
unity里获取text中文字宽度并截断省略的操作
2023-11-02 07:48:52
Mybatis Lombok使用方法与复杂查询介绍
2023-03-30 00:30:13
关于@MapperScan包扫描的坑及解决
2023-02-13 02:45:46
C#多线程之Thread中Thread.Join()函数用法分析
2022-01-20 14:47:58
java8实现List中对象属性的去重方法
2023-08-30 20:50:48
C#表达式中的动态查询详解【译】
2021-07-29 05:19:42
java字节码框架ASM的深入学习
2023-11-29 05:51:19
Java字节码ByteBuddy使用及原理解析上
2023-08-23 19:33:05