我有一个复杂的WIX安装程序,可执行各种任务/ MSI。其中一个MSI安装一个服务,之后数据库MSI运行并更新该服务的app.config以包含正确的连接字符串。
目前,服务在安装后启动(这是在数据库MSI运行之前),这意味着它具有不正确的连接字符串。如何使服务作为安装程序中的最后一项启动,以便它具有正确的连接字符串。
我认为这可能是在Bootstrapper的Bundle中,但是我无法让它工作。以下是Product.wxs中启动服务的当前代码。
<ServiceControl Id="StartEMService" Start="install" Name="EMService"/>
答案 0 :(得分:2)
Bundles仅对包进行操作,因此不支持控制服务等操作。您的数据库包应该有一个ServiceControl
元素来停止(以防万一)并重新启动该服务。安排将配置文件更新为StartServices
标准操作之前的操作。