生成 WIX 创作文件以在单个组件下包含多个文件
Generate WIX authoring files to contain multiple files under a single component
我们正在使用 heat 可执行文件生成一个创作文件,其中为每个文件创建了一个唯一的组件。有没有办法在单个组件下包含多个文件。
预期结果:
<component Id="samplecomponent" Directory="INSTALLFOLDER" Guid="*">
<File Id="file1.txt" Source="$(var.Sourcedir)\file1.xml" />
<File Id="file2.txt" Source="$(var.Sourcedir)\file2.xml" />
<File Id="file3.txt" Source="$(var.Sourcedir)\file3.xml" />
</Component>
Paraffin 3.131 版本可以帮助您为每个组件创建多个文件,但请阅读下面的免责声明(以及上面评论中的 link)。
应该注意的是,Paraffin 可能出于充分的理由弃用了此功能(据我所知,在 WiX 自己的 heat.exe
中从未见过),因为它往往会进行较小的升级和修补几乎无法使用。这与 MSI 的整体复杂性有关——尤其是在升级方面。 Paraffin 弃用该功能也可能有其他原因,例如维护起来太复杂。我不知道。
我总是喜欢每个组件一个文件 - 它避免了各种问题(patching
、upgrades
、self-repair
、etc...
)。以下是一些技术细节:Change my component GUID in wix?
但是,Santhosh has problems with a package that is so large that its installation performance is too slow, even after having applied a number of tricks to speed it up(limit costing
、use admin image
等... - 请参阅 link)。在这种情况下,我首选的替代方法是将包拆分为多个 MSI 文件,然后使用引导程序依次安装它们——例如使用 WiX 的 Burn 引导程序。当然,这并不总是可以接受的。有时单个 MSI 至关重要。
我们正在使用 heat 可执行文件生成一个创作文件,其中为每个文件创建了一个唯一的组件。有没有办法在单个组件下包含多个文件。
预期结果:
<component Id="samplecomponent" Directory="INSTALLFOLDER" Guid="*">
<File Id="file1.txt" Source="$(var.Sourcedir)\file1.xml" />
<File Id="file2.txt" Source="$(var.Sourcedir)\file2.xml" />
<File Id="file3.txt" Source="$(var.Sourcedir)\file3.xml" />
</Component>
Paraffin 3.131 版本可以帮助您为每个组件创建多个文件,但请阅读下面的免责声明(以及上面评论中的 link)。
应该注意的是,Paraffin 可能出于充分的理由弃用了此功能(据我所知,在 WiX 自己的 heat.exe
中从未见过),因为它往往会进行较小的升级和修补几乎无法使用。这与 MSI 的整体复杂性有关——尤其是在升级方面。 Paraffin 弃用该功能也可能有其他原因,例如维护起来太复杂。我不知道。
我总是喜欢每个组件一个文件 - 它避免了各种问题(patching
、upgrades
、self-repair
、etc...
)。以下是一些技术细节:Change my component GUID in wix?
但是,Santhosh has problems with a package that is so large that its installation performance is too slow, even after having applied a number of tricks to speed it up(limit costing
、use admin image
等... - 请参阅 link)。在这种情况下,我首选的替代方法是将包拆分为多个 MSI 文件,然后使用引导程序依次安装它们——例如使用 WiX 的 Burn 引导程序。当然,这并不总是可以接受的。有时单个 MSI 至关重要。