收集 Windows 服务依赖项

Sco*_*hic 5 dependencies windows-services

我最近编写了一个 Windows 服务并将其安装在生产系统上。应用一些 Windows 更新后,服务器必须重新启动,并且我的服务无法正确加载,尽管它被设置为自动启动。在客户注意到故障后,手动服务开始正常。经过一番研究,我发现我错过了向我们的服务添加服务依赖项。因此,对于我们的案例来说,服务的启动顺序是错误的。

我可以解决这个问题,但我现在对如何收集所有必要的服务依赖项的工具或过程非常感兴趣。你知道有一段代码可以处理这个问题吗?

我很感激任何提示。

Aar*_*lla 3

工具如何知道您需要哪些服务?通过分析源码?运行你的服务直到服务失败?

实现此目的的唯一方法是了解您所依赖的服务,并在安装服务时将它们添加到注册表中。

我并不是说不可能实现自动化;我只是说这是不可能的。但如果它可以自动化,那么 Windows 就已经在这样做了:当连接到另一个服务时,Windows 可以停止启动,直到该其他服务可用。