如何在wix安装开始时停止服务?

时间:2016-09-15 17:32:41

标签: wix windows-installer

我正在写一个Wix安装程序。此安装程序的第一步是停止Windows服务。我发现StopServices中的Wix元素InstallExecuteSequence似乎做了我想要的,但我找不到它的任何示例用法。具体来说,我不明白如何指定服务名称。

如何在Wix安装开始时停止服务(并在结束时重新启动)?

1 个答案:

答案 0 :(得分:0)

服务的内部名称(与显示名称相对)将起作用。在Windows 10任务管理器上,它们是“服务”选项卡中的名称 - 显示内部名称。在服务小程序(运行services.msc)中,服务的属性将显示名称和显示名称。如果您使用WiX ServiceInstall安装了该服务,则内部名称是您在那里使用的名称。

服务具有内部名称和显示名称,如安装一个MSI的ServiceInstall表中所示:

https://msdn.microsoft.com/en-us/library/windows/desktop/aa371637(v=vs.85).aspx

基本上是CreateService API的参数列表:

https://msdn.microsoft.com/en-us/library/windows/desktop/ms682450(v=vs.85).aspx

对服务执行操作的API和安装程序使用该内部名称(ServiceInstall和ServiceControl中的Name),因为显示名称是可本地化的,但内部名称保持不变。