我正在开发一个具有很多层次结构的大型应用程序,并且我正在发疯地调用日志消息并忘记它们。在测试时我不时遇到异常。现在我正在通过接口和其他方式将错误消息转发到我的主窗体。
有没有办法让应用程序在异常情况下始终触发主窗体中的单个方法。
我的意思是,现在我捕获异常并通过接口转发它。我希望能够忽略这一点,每次发生异常时,在主窗体中自动执行一个方法
如果您允许异常通过应用程序冒泡,您可以使用AppDomain.UnhandledException。您应该允许任何您无法有意义地处理的异常冒泡。
这样的事情应该可以解决问题:
class Program
{
public static void Main()
{
form = new MainForm();
AppDomain.CurrentDomain.UnhandledException +=
new UnhandledExceptionEventHandler(form.OnUnhandledException);
Application.Run(form);
}
}