如何将MSI文件添加到我的安装程序

19

我有一个使用WiX 3.6(2011年10月)创建的安装程序,我的应用程序需要在系统中安装另一个服务。我通过以下方式向我的安装程序添加了一个MSI文件:

<Fragment>
    <PackageGroup Id="MyService" >
        <MsiPackage Id="MyService" Name="MyService" SourceFile="MyService.msi" DisplayInternalUI="yes" EnableFeatureSelection="yes">
        </MsiPackage>
    </PackageGroup>
</Fragment>
<Fragment>
    <ComponentGroup Id="APPFILES">
    ...
</Fragment>

安装程序运行正常,但是这个额外的MSI文件没有安装。我错过了什么吗?

2个回答

19

我创建了一个新的 Bundle 项目,其中包括我的两个 MSI 文件。这是唯一的方法吗? - ZedZip
@Oleg:可能有其他方法可以做到这一点(如果适用的话,可以使用合并模块),但我一直通过引导程序来完成。但是,您不必强制使用Burn。我过去的做法是创建一个引用Wix库的Visual Studio项目。然后,您可以通过C#或其他方式创建自定义操作。但归根结底,您需要从exe启动安装,以便每个msi可以按顺序运行。 - Jason Down
这两个链接现在都已失效:( - Matt Clarkson
@MattClarkson 我更换了引导程序链接(留下旧链接以防万一)。第二个链接看起来还不错...也许你点击时该网站出现了问题? - Jason Down
1
@JasonDown 看起来网站挂了,感谢你的替换。我实际上发现这篇文章连同你提供的替换链接非常适合学习如何启动Burn。 - Matt Clarkson
@MattClarkson。很高兴听到这个消息。我也在上面添加了那个链接。 - Jason Down

6

你的意思是我需要使用 exe 而不是 msi?像这样: - ZedZip
不是的。最终的软件包(包括MSI)是一个EXE文件。我添加了另一个链接,其中包含更多详细信息。 - rmrrm
我很蠢 ;-),但我不知道如何将我的第二个MSI添加到启动程序中?我知道如何添加SQL Server等内容,但如何添加我的第二个安装程序MSI包?我的意思是像“一个示例!”这样的东西。 - ZedZip
由于Cosmin的链接已经不存在,如果有人想知道如何在bootstrapper中引用多个MSI,请参考此处包含多个MSI的链元素示例:https://dev59.com/k2nWa4cB1Zd3GeqP26pH#12975489 希望对您有所帮助... - Fetchez la vache

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接