2013-11-25 85 views
0

我正在为我的应用程序创建Windows服务。它在我的开发机器上都能正常工作,但是当我试着在我的测试机器上启动它时(使用InnoSetup创建的安装程序),我收到消息突然停止了这个过程。当查看一些细节时,我看到我得到一个ArgumentException,但现在想到哪里。在没有调试器的机器上调试Windows服务

我已经看过debugging Windows services,这在我的开发机器上是可以的,但对我的测试机来说没有问题。

我可以在我的程序中捕捉到Exception,但是如何处理它?有什么方法可以与系统日志或试图启动它的services.msc程序进行通信?

回答

0

我去调试的老式的方法:打印消息记录到文件:

try { 
    ServiceBase.Run(theService); 
} catch (Exception e) { 
    System.IO.WriteAllText(@"C:\debug.log", e.Message+"; "+e.StackTrace); 
}