最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
C# 屏蔽由于崩溃弹出的windows异常弹框
时间:2022-06-25 07:48:50 编辑:袖梨 来源:一聚教程网
windows应用程序(包括控制台)在运行时如果出现了未处理的异常会出项windows的异常提示框
这个提示框在平时并没有什么影响。但是当我们使用启动的是一个服务器程序时,我们的要求应该是尽可能快的重启应用。
但是由于这个提示框导致我们的第三方守护程序并不知道应用已经崩溃退出,导致我们无法及时处理。
所以,我们应该在程序启动时再做一个处理,即添加未处理异常的事件
C#: AppDomain.CurrentDomain.UnhandledException
解释: 此事件提供通知未捕获的异常。 它允许应用程序来记录有关异常的信息,系统默认处理程序将异常报告给用户和终止应用程序之前。 如果提供了有关状态的应用程序的足够信息,可以采取其他措施-例如保存更高版本的恢复的程序数据。 建议小心,因为不处理异常时,可能会损坏程序数据。
在该事件中我们可以从容的捕获异常、记录然后退出重启。
示例代码:
classProgram
{
staticintm_count = 0;
staticvoidMain(string[] args)
{
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
while(true)
{
Func1();
Thread.Sleep(10);
}
}
privatestaticvoidCurrentDomain_UnhandledException(objectsender, UnhandledExceptionEventArgs e)
{
Console.WriteLine("有未经处理的异常,程序即将退出!");
Thread.Sleep(5000);
Environment.Exit(-1);
}
staticvoidFunc1()
{
m_count++;
if(m_count > 100)
{
thrownewException();
}
}
}
结果:
相关文章
- 光与影33号远征队标记射击:标记射击符文效果及获取方式详解 12-15
- 学信网学历查询入口-学信网个人学历认证官网 12-15
- 女神漫画入口首页精品漫画-女神漫画首页入口热作精选 12-15
- 逃离鸭科夫仓库区图纸在哪 仓库区图纸位置详情 12-15
- 逃离鸭科夫零号区图纸在哪 零号区图纸位置详情 12-15
- 巨量百应官网登录入口-官方网址一键直达 12-15

