很抱歉,如果在这里已经回答了这个问题,我找不到它,我没有在20分钟内找到它,但是我的大学表示无法完成。
我们的软件在运行时会运行两项服务,但是,在Windows更新期间,它们可能会遇到问题,因为Windows在更新过程中会停止其服务或执行某些操作。
我想知道是否有一种方法可以检测Windows更新是否正在进行/正在下载等(已授予管理员访问权限)以使用它,以便服务可以相应地采取行动。 Windows中现在没有这种功能是真的吗?
将我指向挖掘的方向也很感激!
感谢您的时间和帮助! (使用xaml,c#,rest,zeroMQ开发.NET)
答案 0 :(得分:1)
与其检测特定进程(例如Windows Update)是否正在运行,不如检测并处理由服务控制管理器发送给服务的“停止”命令。在您的服务中实现OnStop处理程序(或其他合适的处理程序,如OnShutdown),然后从那里执行所需的操作。这是一种更通用的方法,将在服务停止的所有情况下提供帮助。如果确实需要,您可以始终在OnStop处理程序中检测当时Windows更新进程是否正在运行。