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