2013-03-26 64 views
0

我正在开发一个实际上是windows服务的产品的扩展。我附加从Visual Studio的服务,但几分钟后调试服务停止工作,所以我需要从头开始调试或尽一切快。防止在调试期间停止Windows服务

我很确定灵魂应该存在。有谁能够帮助我?

+0

你把你的代码放在无限的时间,定时器甚至工作背景吗?保持你的服务很重要 – HokaHelal 2013-03-26 10:10:26

回答

1

我不认为将调试器附加到实时服务是个好主意;服务管理器希望服务能够及时响应状态请求和控制信号,如果服务单步或受到干扰,服务无法做到这一点。

调试服务的常用步骤是为可执行文件提供一个命令行选项,使其作为常规应用程序运行,并在必要时使用一些模拟服务控制信号的机制。然后,您可以使用调试任何其他应用程序的相同方式对其进行调试。

如果调试确实必须在实时服务上完成,则可以选择在虚拟机(或单独的物理机)中运行该服务并使用内核调试程序。

0

目前的Windows服务停止

1)它完成自己的工作,执行你的代码,是指你的代码不进定时器,无限循环或做backgroundwork两个主要的原因

2)有例外发生,使服务sopped工作,这意味着你需要在你的整个代码中放大try \ catch以追踪错误的位置,并防止服务停止