【发布时间】:2010-12-24 03:10:30
【问题描述】:
我的服务在某些资源不可用时会失败。我已将其配置为尝试重新启动两次,然后在第三次尝试时向我发送 SMS。不幸的是,windows 只为您提供了在一定数量 天 后重置失败计数的选项,而我真的希望它在每三次失败时重置一次。问题是一旦服务再次运行,一个失败将导致它发送另一条短信,甚至不会尝试重新启动服务。
所以我想在我的 SMS 脚本中包含一些代码来重置失败计数器。我找到了以下注册表位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
其中包含失败操作的其他内容(二进制)设置,但据我所知没有计数器。
sc 命令可让您查询各种内容,但也不返回失败计数。
理想情况下,我想要一种以编程方式查询/重置故障计数器的方法,但命令行或注册表解决方案会很好(因为我可以编写脚本)。
【问题讨论】:
-
我正在研究这个,我相信你可以通过 WMI /root/cimv2:Win32_Service 接口来做到这一点。我会继续研究并回复您。
-
无法通过 WMI 界面执行此操作。我不知道如何提供帮助。我会继续做一些检查。
-
@Wayne:感谢您的调查。我不是 win32 api 专家,所以我真的不知道从哪里开始。你会认为有办法的。
标签: windows-services reset counter