目前,我的代码中有以下语句允许我调试 Windows 服务:
#If DEBUG Then
System.Diagnostics.Debugger.Launch()
#End If
我把它放在 OnStart 方法中,当我启动服务时,我可以附加到我的 Visual Studio 实例。目前我有一个失败的实例。我在虚拟机上安装了该服务,但遇到以下错误:
MyService.exe [376] 中发生未处理的异常(“为用户启动”)。即时调试此异常失败并出现以下错误:调试器无法启动,因为没有用户登录。
我在本地机器上调试这样的服务从来没有遇到过问题,所以我不确定发生了什么。用户设置为登录,LocalSystem
好像这很重要。我通过管理员登录到虚拟机。