即使在处理未处理的异常后,应用程序也会出现错误消息

时间:2012-05-14 08:57:19

标签: c# .net .net-3.5

我们订阅了未处理的线程异常和未处理的异常,如下所示

public partial class ICEView : Form
{

    public ICEView()
    {
        InitializeComponent();

        AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);
        Application.ThreadException += new ThreadExceptionEventHandler(OnThreadException);
    }
}

有时应用程序崩溃而没有输入显示错误消息的异常处理程序,如下面给出的链接中所示。但是我们得到的错误消息没有“调试”按钮。可能是显示消息框的原因。

http://www.computerhope.com/issues/pictures/winerror.jpg

1 个答案:

答案 0 :(得分:2)

尝试在表单之前的Program.cs中的Main方法中添加异常处理程序,或尝试在InitializeComponent方法之前添加异常处理程序。

[STAThread]
static void Main()
{
    Application.ThreadException += new ThreadExceptionEventHandler(OnThreadException);
    Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
    AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);

    Application.Run(new ICEView());
}