c# - 是否有 .Net API 无需轮询即可检测 Windows 服务的状态更改?

标签 c# events windows-services

您好,我正在使用 ServiceController类来启动和停止 Windows 服务,我还可以查询 Status 属性来检测服务是否正在运行。我想在我的应用程序中监视和显示此服务的状态。不幸的是,这似乎只能通过轮询 Status 属性来实现。我宁愿使用一些通知机制。

.NET 中是否有任何事件可以通知我服务状态已更改?

最佳答案

如果您的目标是 Windows Vista 或更高版本,您可以调用 NotifyServiceStatusChange

WMI 将为您轮询服务。检查How can I monitor status changes of windows services under windows xp?

关于c# - 是否有 .Net API 无需轮询即可检测 Windows 服务的状态更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4459865/

相关文章:

c# - 从另一个窗体刷新Form1 dataGrid c# winform

c# - 自动更新 WPF 应用程序

macos - OSX Quartz 事件点击 : event types and how to edit events

c# - 如何在 MVVM 架构中将 animationview play 与 LottieForms 绑定(bind)?

c# - 为什么这个翻译动画不起作用?

c# - 如何跨对象链处理事件?

javascript - 输入,手动设置值时不会触发 onchange 事件

python - 从 LocalSystem 服务(通过 CreateProcessAsUser)生成的 GUI 应用程序没有焦点

asp.net-mvc-3 - 我可以从 Windows 服务调用 MVC 操作吗?

c# - 我们应该使用 Windows 服务还是线程池?