相关疑难解决方法(0)

更轻松地调试Windows服务

是否有更简单的方法来单步执行代码,而不是通过Windows服务控制管理器启动服务,然后将调试器附加到线程?这有点麻烦,我想知道是否有一个更简单的方法.

c# debugging windows-services

321
推荐指数
14
解决办法
22万
查看次数

你如何调试Windows服务?

我阅读了有关该主题的MSDN文章.报价:

由于服务必须在服务控制管理器的上下文中而不是在Visual Studio中运行,因此调试服务并不像调试其他Visual Studio应用程序类型那样简单.要调试服务,必须启动该服务,然后将调试器附加到运行它的进程.然后,您可以使用Visual Studio的所有标准调试功能来调试应用程序.

现在我的问题是我的服务首先无法启动.首先它崩溃,并说:

MyServiceName.exe [3596]中发生未处理的异常(System.Runtime.InteropServices.COMException)

并建议我调试它(​​当我选择一个时,调试器实例会立即崩溃).然后它说

无法在本地计算机上启动MyServiceName服务.错误1053:服务未及时响应启动或控制请求

那么,我如何调查/调试我的服务无法启动的原因?问题是我创建了一个控制台应用程序,它完全可以完成服务的工作,并且工作正常.(我的意思是我只是将OnStart()方法和主循环的内容复制到main中.

任何帮助,将不胜感激.

该服务是用C#编写的,大量使用互操作.我正在使用VS2008

c# c++ debugging windows-services

47
推荐指数
7
解决办法
2万
查看次数

标签 统计

c# ×2

debugging ×2

windows-services ×2

c++ ×1