gpt4 book ai didi

c++ - 如何检测自动NT服务是否会启动

转载 作者:可可西里 更新时间:2023-11-01 11:38:15 26 4
gpt4 key购买 nike

我正在使用一个应用程序开发一个简单的 NT 服务,该应用程序将监视它并在任务栏中显示状态。在启动监视器时检查服务是否正在运行,如果没有则提示启动它。这很好,直到重新启动时监视器在服务之前启动并提示启动它,即使它会自动启动。

通过阅读文档,我认为状态将报告为 SERVICE_START_PENDING,这是服务在进入服务主函数时所做的第一件事,但状态似乎报告为 SERVICE_STOPPED 如果 SCM 尚未开始启动服务。有什么方法可以检测到服务将很快开始吗?

谢谢,J

最佳答案

我认为没有任何方法可以预测服务控制管理器将来会做什么。但是,我可以想到一些可以缓解您的情况的事情:

  • 定期监控服务状态,当它进入“启动”时,适当更新您的图标状态

  • 检查进程的自动启动设置,如果设置为自动,而您的监控程序才刚刚启动,则延迟报告服务未运行(假设它可能很快就会启动)。

关于c++ - 如何检测自动NT服务是否会启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5947514/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com