我想为我的代码中可能未捕获的所有意外异常设置一些处理程序。在Program.Main()我使用以下代码:
Program.Main()
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(ErrorHandler.HandleException);
但是它没有按我预期的那样工作。当我在调试模式下启动应用程序并引发异常时,它确实调用了处理程序,但是此后,Visual Studio中的异常帮助程序弹出了,好像该异常发生时没有进行任何处理。我在处理程序中尝试了Application.Exit(),但效果不佳。
我想实现的是,异常由我的处理程序处理,然后应用程序关闭良好。还有其他方法吗?还是我以错误的方式使用了上面的代码?
这是因为您是通过Visual Studio在“调试”模式下运行它的。如果您在其他地方发布和安装应用程序,则只会处理全局异常处理程序。