Wix 3是否有内置方法来检查服务是否存在?我能想到的最接近的猜测是使用ServiceConfig并尝试检测故障。
答案 0 :(得分:1)
AppSecInc。社区MSI扩展具有Service_Exists自定义操作 http://msiext.codeplex.com
<Binary Id="SystemTools" SourceFile="$(var.BinDir)\SystemTools.dll" />
<CustomAction Id="SetServiceName" Property="SERVICE_NAME" Value="Service1" />
<CustomAction Id="ServiceExists" BinaryKey="SystemTools" DllEntry="Service_Exists" Execute="immediate" Return="check" />
<InstallExecuteSequence>
<Custom Action="SetServiceName" After="InstallFiles">NOT Installed</Custom>
<Custom Action="ServiceExists" After="SetServiceName">NOT Installed</Custom>
</InstallExecuteSequence>
如果服务存在,SERVICE_EXISTS设置为“1”,否则设置为“0”。