首页 新闻 会员 周边 捐助

控制台程序的未处理异常我已经用AppDomain.CurrentDomain.UnhandledException捕获了,为什么程序还会停止

0
[已解决问题] 解决于 2013-10-22 22:55

控制台程序的未处理异常我已经用AppDomain.CurrentDomain.UnhandledException捕获了,为什么程序还会停止

拖鞋王子的主页 拖鞋王子 | 初学一级 | 园豆:38
提问于:2013-08-24 13:46
< >
分享
最佳答案
0

未捕获的异常,通常就是运行时期的BUG,于是我们可以在UnhandledException 的注册事件方法CurrentDomain_UnhandledException中将未捕获异常的信息记录在日志中。值得注意的是,UnhandledException提供的机制并不能阻止应用程序终止,也就是说,CurrentDomain_UnhandledException方法执行后,应用程序就会被终止。

http://www.cnblogs.com/luminji/archive/2011/01/05/1926033.html

奖励园豆:5
alone__ | 初学一级 |园豆:60 | 2013-08-24 21:37
其他回答(3)
0

你是怎么捕获的

dudu | 园豆:30757 (高人七级) | 2013-08-24 15:48

这样的:

AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;

 


        private static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
        {
            Exception error = (Exception)e.ExceptionObject;
            Console.WriteLine("MyHandler caught : " + error.Message);
        }

支持(0) 反对(0) 拖鞋王子 | 园豆:38 (初学一级) | 2013-08-28 11:55

@拖鞋王子: 这个只是在异常发生时进行事件处理

支持(0) 反对(0) dudu | 园豆:30757 (高人七级) | 2013-08-28 16:58
0

捕获到了并不意味着安全,尤其是运行时的异常,很多时候可能跟环境有关系这种情况下在debug模式可以很好的观察但是在发行版本中却是无法处理的~ 

andy1987 | 园豆:490 (菜鸟二级) | 2013-09-04 19:47
0

是不是多线程的异常没有捕获啊

IT屌丝 | 园豆:184 (初学一级) | 2013-09-18 16:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册