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异常弹框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

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

    windows应用程序(包括控制台)在运行时如果出现了未处理的异常会出项windows的异常提示框 这个提示框在平时并没有什么影响.但是当我们使用启动的是一个服务器程序时,我们的要求应该是尽可能快的重启应用. 但是由于这个提示框导致我们的第三方守护程序并不知道应用已经崩溃退出,导致我们无法及时处理. 所以,我们应该在程序启动时再做一个处理,即添加未处理异常的事件 C#:   AppDomain.CurrentDomain.UnhandledException 解释: 此事件提供通知未捕获的异常.

  • 基于jQuery实现弹出可关闭遮罩提示框实例代码

    jquery CSS3遮罩弹出层动画效果,使用非常简单,就两个标签,里面自定义内容和样式,四种常见效果,懂的朋友还可以修改源代码修改成自己想要的效果 先给大家展示下效果图,如果大家感觉还不错,请参考实现代码. 效果演示 关键代码如下所示: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo

  • jquery实现点击弹出带标题栏的弹出层(从右上角飞入)效果

    本文实例讲述了jquery实现点击弹出带标题栏的弹出层(从右上角飞入)效果.分享给大家供大家参考.具体如下: 这是一款jquery实现的弹出层,点击文字后从网页右上角飞入,也可以说是滑入,此类弹出框带有关闭按钮,可自定义标题栏和弹出框内容,风格自己可定义,代码简洁,基于jquery实现,学习参考价值大,也可拿出即用. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/jquery-fade-in-title-info-stye-alert-code

  • jQuery实现点击任意位置弹出层外关闭弹出层效果

    在之前做项目的时候经常会在主页面上点击某个按钮,右侧弹出一个div输出对应内容的详细信息.此时,我是希望在鼠标点击弹出层外的时候关闭该弹出层,主要思想就是: 找到鼠标点击的那个元素 判断这个元素是否在指定区域内,其实就是判断它的父元素是不是弹出层 如果不是就对弹出层进行hide,如果是就不进行任何操作 具体实现 该代码需要使用jQuery,代码如下: $(document).mousedown(function(e){ if($(e.target).parent("#info").le

  • android底部弹出iOS7风格对话选项框(QQ对话框)--第三方开源之IOS_Dialog_Library

    先给大家展示下效果图,喜欢的朋友可以下载源码哦. 完成这个效果的是使用了 IOS_Dialog_Library 下载地址:http://xiazai.jb51.net/201509/yuanma/IOS_Dialog_Library(jb51.net) 下载后导入到Eclipse中,然后作为Library引入到自己的工程中,直接作为第三方控件使用. 测试代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/a

  • layui 弹出层回调获取弹出层数据的例子

    如下所示: // 弹出楼栋负责人信息页面 layer.open({ type: 2, title:'请选择楼栋负责人', maxmin: false, area: ['60%', '80%'], offset: '0px', content: '${ctx}/life/houserInsertion/headBuildingInfo?pkProject='+pkProject, btn: ['确定','关闭'], yes: function(index){ //当点击'确定'按钮的时候,获取弹出

  • JavaScript实现弹出式可拖动登录框

    本文实例为大家分享了JavaScript实现弹出式可拖动登录框的具体代码,供大家参考,具体内容如下 效果图展示: 总体来说实现起来比较简单,老规矩,先搭建html框架,代码如下: <div class="login-header"><a id="link" href="javascript:;" >点击,弹出登录框</a></div>     <div id="login"

  • 23个Javascript弹出窗口特效整理

    1. Lightview Lightview是一个基于Prototype与Script.aculo.us开发,用于创建可以覆盖整个页面的模式对话框.展示的内容不仅可以是图片.文字.网页.通过Ajax 调用的内容,还可以是Quicktime/Flash影片都能够以非常酷的效果展示. 2. ThickBox (演示地址) ThickBox是一个模式对话框UI控件.基于jQuery开发,可以用来展示单张或多张图片,内嵌的内容,iframed的内容,或通过Ajax获取的内容. 3. Fonshen JS

  • 如何创建一个JavaScript弹出DIV窗口层的效果

    在本教程中,我将用最通俗的语言和最简洁的代码给大家演示如何创建一个JavaScript弹出DIV窗口层的效果. 创建一个弹出DIV窗口可能是现在网站/网页制作中最常碰到的问题之一.传统的JavaScript弹窗已经不适合目前网站的设计理念了,理由有二:首先,不友好--生硬的弹出对话框且伴随着"哐"的一声对用户体验是个很大的挑战:其次,兼容性不够强--有相当多的浏览器屏蔽了这种JS的Alert()方法.于是,一个良好用户体验的网站需要一种更合理的解决方案--使用很少的HTML代码,很少的

  • MC Dialog js弹出层 完美兼容多浏览器(5.6更新)

    效果图:MC Dialog 功能特点 1.支持键盘操作(esc关闭,enter执行当前获得焦点按钮的事件,屏蔽了ctrl键盘,屏蔽了tab键真正实现了一个模拟浏览器自带对话框的功能) 2.支持焦点智能移动(当焦点移出层外时,自动将焦点移回层或者有按钮则移到按钮上,保证焦点始终在层上,确保快捷键操作正确) 3.智能闪烁提示功能(当焦点移出层外部,比如你在层外点击了,则层会闪烁提示你必须在当前层操作,这里完美模拟了浏览器自带对话框的操作) 4.支持按钮外接回调事件(可以自定回调事件,绑定给按钮) 5

随机推荐