Windows 服务依赖项

Windows 服务依赖项

我有一个 Windows 服务A这取决于服务

根据这个Microsoft 知识库文章我可以添加一个注册表项来告诉 Windows 等待在开始之前开始A

我可以期待服务吗A之前被关闭当我关闭 Windows 时?

答案1

不幸的是,Windows Vista 之前版本不支持。

以下是来自权威机构的解释:http://support.microsoft.com/kb/203878

Windows Vista(及更新版本)具有“服务关闭排序”功能。此功能由“PreShutDownOrder”注册表值控制(在http://technet.microsoft.com/en-us/magazine/2007.03.vistakernel.aspx)。

在 Google 上用“site:microsoft.com”搜索“PreShutDownOrder”返回的结果数量少得可怜。它似乎只是微软的半文档。我会尝试一下,看看它是否能满足您的要求。

以下是“Ask Perf”博客中的一篇博文(顺便说一句,如果你想了解 Windows 内部结构,这是一个非常棒的博客):https://techcommunity.microsoft.com/t5/Ask-The-Performance-Team/WS2008-Service-Shutdown-and-Crash-Handling/ba-p/372708

答案2

当您手动关闭依赖于其他服务的服务时,该服务会先关闭其他服务,然后再关闭自身。

编辑:Evan Anderson 发布了一条链接,关于在 UPS 等设备上运行操作系统时关闭操作系统时不使用依赖项。这是一个很好的、有效的观点(尽管它没有提到 2000 以上的 Windows。)

相关内容