【发布时间】:2011-09-30 14:56:19
【问题描述】:
如何制作一个应用来监听服务状态更改事件的服务。 (我不想重复检查所有服务)
编辑
我需要它在 Windows XP / 2000 上工作
【问题讨论】:
如何制作一个应用来监听服务状态更改事件的服务。 (我不想重复检查所有服务)
编辑
我需要它在 Windows XP / 2000 上工作
【问题讨论】:
在 Vista 及以上版本中,您可以使用NotifyServiceStatusChange API。见一些sample code on MSDN。
如果您要监控多个服务,则必须为要监控的每项服务致电 NotifyServiceStatusChange。
【讨论】:
您正在寻找需要 Vista 的 NotifyServiceStatusChange。在 2000/XP 上,您需要轮询。
【讨论】:
您可以将 WMI 与 SELECT * FROM __InstanceModificationEvent WHERE TargetInstance ISA 'Win32_Service' 之类的东西一起使用,然后检查 Win32_Service 类的 State 字段。
【讨论】: