2

我将我的 Windows 服务恢复配置如下:

  • 项目清单
  • 第一次失败:重启服务
  • 第二次失败:重启服务
  • 后续失败:不采取任何行动
  • 重置失败计数后:1 天
  • 重启服务后:1分钟

现在我想在第三次失败后重置失败计数,以便管理员手动重新启动服务时,可以自动重新恢复服务。

到目前为止,我找到的唯一解决方案是重置计数器是卸载/重新安装我发现不干净的服务。知道怎么做吗?

4

1 回答 1

2

服务控制管理器计算自系统启动以来每个服务失败的次数。如果服务在 dwResetPeriod 秒内没有失败,则计数将重置为 0。

在 SERVICE_FAILURE_ACTIONS 的 dwResetPeriod 设置为 0 的情况下调用ChangeServiceConfig2将重置计数。

您将需要查询(参见QueryServiceConfig2)dwResetPeriod 的原始设置,将其设置为零,然后将其重置回原始设置以保留状态。

于 2012-12-09T23:50:03.963 回答