我们已按以下方式注册未处理的例外情况。该应用程序是一个远程服务器。如果从远程处理服务器抛出未处理的异常,则未由未处理的异常处理程序处理。可能是什么问题?
[STAThread]
[Obfuscation(Exclude = true)]
static void Main(string[] args)
{
Application.ThreadException += new ThreadExceptionEventHandler(OnThreadException);
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);
.
.
.
Application.EnableVisualStyles();
Application.Run(form);
}
答案 0 :(得分:1)
希望这种方法可以帮助你'Application.SetUnhandledExceptionMode'。它指示应用程序如何响应未处理的异常。
static void Main(string[] args)
{
Application.ThreadException += new ThreadExceptionEventHandler(OnThreadException);
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(OnUnhandledException);
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
Application.EnableVisualStyles();
Application.Run(form);
}
答案 1 :(得分:0)
如果它是远程服务器并且异常是作为客户端交互的一部分发生的,那么异常将被发送到客户端而不会导致服务器崩溃。