防止windows服务在调试期间停止

本文关键字:调试 windows 服务 防止 | 更新日期: 2023-09-27 18:06:05

我正在为产品开发一个扩展,实际上是windows服务。我从Visual Studio连接到服务,但调试几分钟后服务停止工作,所以我需要从头开始调试或快速完成所有操作。

我很确定答案应该存在。有人能帮帮我吗?

防止windows服务在调试期间停止

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

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

如果必须在活动服务上进行调试,另一种选择可能是在虚拟机(或单独的物理机)中运行服务,并使用内核调试器。

Windows Service停止有两个主要原因

1)它完成了它们的工作并执行你的代码,这意味着你的代码没有进入定时器,无限循环或做后台工作