Bundle 可以在安装期间从本地文件夹中引用 MSI 吗?
Posted
技术标签:
【中文标题】Bundle 可以在安装期间从本地文件夹中引用 MSI 吗?【英文标题】:Can a Bundle reference MSIs from local folder during installation? 【发布时间】:2013-02-21 01:45:26 【问题描述】:我通过链接两个 MsiPackages 创建一个 Bundle。 Bundle 包含两个 MsiPackages 并创建一个捆绑的 .exe 作为安装程序。是否可以设置 Bundle 以便在安装期间从包含两个 MSI 的本地文件夹中引用 MSI(不嵌入或包含它们)?我希望从本地文件夹中引用两个 MSI,并且仅在安装期间安装。 谢谢
【问题讨论】:
【参考方案1】:是的。默认情况下,Bundle
元素的Compressed
属性设置为yes
。默认情况下,要让你的包外部化,请执行以下操作:
<Bundle Compressed='no'>
您的所有包现在都将是外部的。现在,如果您只想显式压缩选择的包,请将 Compressed='yes'
属性添加到所需的 XxxPackage
元素中。
【讨论】:
【参考方案2】:虽然我没有这方面的实践经验,但我认为您可以尝试使用Payload
元素作为Chain
元素下MsiPackage
元素的子元素来实现此目的。
Payload
元素可以选择将要捆绑的 MSI 指定为 SourceFile
或 DownloadUri
属性。有一个选项可以说明您是否需要使用具有 YesNoDefaultType
值的属性 Compressed
使用引导程序压缩此 MSI。通过这种方式,您可以指定您的源 MSI,而无需嵌入到我希望的包中。
【讨论】:
以上是关于Bundle 可以在安装期间从本地文件夹中引用 MSI 吗?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Wix Bundle 中引用动态命名的 MSI 文件
从 Wix Bootstrapper Bundle 检查文件版本