我有一个简单的WinForms应用程序,用于输入测试用例。自从我将这个应用程序升级到.NET 4.0并添加了一个新的选项卡页面来验证XML与XSD模式,该应用程序就会随机崩溃。我无法重现异常。
我的QA人员收到的错误是通用的Windows消息:
TestCaseViewer遇到问题需要关闭。我们为此表示抱歉。
为了尝试找到真正的错误,我已经在程序的Main方法开头添加了以下代码:
事件处理程序的格式如下所示:
我的QA人员收到的错误是通用的Windows消息:
TestCaseViewer遇到问题需要关闭。我们为此表示抱歉。
为了尝试找到真正的错误,我已经在程序的Main方法开头添加了以下代码:
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
Application.ThreadException += Application_ThreadException;
事件处理程序的格式如下所示:
static void Application_ThreadException(object sender, ThreadExceptionEventArgs e)
{
try
{
MessageBox.Show(e.Exception.ToString(), @"Thread Exception",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
finally
{
Application.Exit();
}
}
static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
try
{
var ex = (Exception)e.ExceptionObject;
MessageBox.Show(ex.ToString(), @"Unhandled Exception",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
finally
{
Application.Exit();
}
}
不幸的是,这并没有起到帮助作用,无论是什么导致错误的东西都会以一种生成未处理错误并冒泡到操作系统的方式继续发生。
有人能给我关于捕获此异常的其他想法吗?