在 WiX 中包含许多文件,但没有列出每个文件。
Posted
技术标签:
【中文标题】在 WiX 中包含许多文件,但没有列出每个文件。【英文标题】:Including many files in WiX without listing each one. 【发布时间】:2012-12-20 00:57:12 【问题描述】:我正在编写一个使用 WiX 3.0 的 MSI,我试图弄清楚如何使它包含目录中除某些文件之外的所有文件,而无需手动指定每个属性。类似于 installshield 中的动态拾取。
我正在查看的旧安装程序(使用 WiX 2.0)执行以下操作:
-
一个 makefile 调用一个脚本,将所有必要的文件复制到一个单独的目录结构,模拟最终产品的安装方式。
另一个脚本,用于将此临时文件夹中每个文件的属性插入到部分完成的 wxs 文件中。
WiX 运行
我想避免这一步,并想知道是否有一些命令或预处理器指令来实现这个 WiX 本身?
上面的第 1 步还会生成一些生成的文件(来自工具),然后将这些文件包含在 wxs 文件中。有没有办法我也可以效仿?
【问题讨论】:
寻找相同的,但你必须手动添加所有文件:( 【参考方案1】:您需要指定每个文件。
但是,您可以使用Heat.exe 自动生成一个 wxs 文件,您可以将其包含在构建过程中。
【讨论】:
是否有关于如何制作典型“从头开始创建安装程序”场景的文档?我真的很喜欢 WiX,但是文档太少了,几乎不可能学习 WiX。 @ChristianSauer 不,不是很多!主要是一些教程的混合,以及有关 Windows Installer 的信息。 Heat 是你想要的,你可以将它放在我以非解决方案为代价,压缩了目录和构建脚本中的文件。您当前方法的优点是 MSI 知道这些文件,它们可能是关键文件(因此已修补/升级和/或修复)。
我会研究 saschabeaumont 关于使用热量的建议。显然是更好的解决方案
【讨论】:
以上是关于在 WiX 中包含许多文件,但没有列出每个文件。的主要内容,如果未能解决你的问题,请参考以下文章
GScript将同一文档中的多张图纸转换为单独的PDF,并将每个PDF发送到每张图纸的单元格B2中包含的电子邮件地址中
如何在运行时确定我的 WiX ManagedBootstrapperApplication 中包含的产品的 ProductCode?