我正在使用visual studio professional 2015,c#.net framework 4。 我已经为Windows创建了一个服务,用于在串行端口上发送和接收数据。它旨在计算机启动时启动,并在计算机关闭时关闭。它不应该挂起或停止。
我一直在运行测试并发现当Windows执行更新时会导致我的服务挂起。我不知道如何调试此挂起。
我很感激有关如何开始追踪此错误的任何想法。
感谢。
答案 0 :(得分:0)
这里可能有所帮助。
当我编写服务时,我通常会为名为AppDomain
的{{1}}事件添加一个事件处理程序。
它是一种包罗万象的异常处理程序,并且在一些场合中派上用场,并帮助您改善错误处理。
UnhandledException
如有必要,请随意使用您自己的日志记录框架替换// Add this code to the Service Start method or the constructor
AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException;
// Then add this method to your service class, it will be invoked when
// your code encounters an exception that is not trapped by a try/catch/finally
private void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
var ex = e.ExceptionObject as Exception;
Trace.TraceError("Unhandled Exception occurred in service: {0}", ex);
}
日志记录。
希望这会有所帮助。