在Windows服务中不会引发CurrentDomain.UnhandledException
作者:互联网
我设置了UnhandledException来记录我的服务崩溃之前的所有异常.
AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(unhandledException);
我正在通过引发和未处理的异常进行测试.
throw new Exception("TestExcepion");
private void unhandledException(object sender, UnhandledExceptionEventArgs e)
{
// Logs to Log4Net but its not reaching here.
Log.Info("Unhandled Exception: " + (e.ExceptionObject as Exception).ToString());
}
我正在尝试使用Log4Net在unhandledException方法中记录此消息,但是我什么也没收到.
为什么没有捕获到异常?
解决方法:
您的抛出代码可能是在使用set AppDomain.CurrentDomain.UnhandledException之前使用的,或者是因为您将其放在OnStart方法中
第二个选择是因为它是ThreadException.
在以下线程中讨论了Bot以上问题:
> How can I set up .NET UnhandledException handling in a Windows service?
> Global exception handler for windows services?
标签:unhandled-exception,c 来源: https://codeday.me/bug/20191122/2062764.html