日期:2014-05-18  浏览次数:20938 次

程序异常处理
我的程序已经完成了,里面也有许多异常处理。应该是把目前能想到异常都处理好了。

我现在担心还会有一些可能会出错的地方没有放到try语句里。如果没有放到try语句里的语句抛出了异常,能有什么办法可以捕获这个异常吗?也就是要有个办法把所有没有处理的异常都捕获了。

------解决方案--------------------
桌面应用的话
C# code

/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
    Application.ThreadException += new System.Threading.ThreadExceptionEventHandler(Application_ThreadException); //映射事件
            
    //...略
}



static void Application_ThreadException(object sender, System.Threading.ThreadExceptionEventArgs e)
{
    MessageBox.Show(e.Exception.ToString());            
    
}

------解决方案--------------------
不过还是不建议用全局异常捕获除非你的程序已经上线测试没什么大问题的情况下
否则最好不要捕获;否则会导致程序很混乱真正的错误不容易被发现;
------解决方案--------------------
MARK
------解决方案--------------------

------解决方案--------------------
Web应用,Global.asax 可以截获所有异常,跳转到一个默认错误页 
好像web。config文件也有设置