在WiX中包含许多文件而不列出每个文件。

时间:2012-12-20 00:57:13

标签: wix windows-installer wix3.6

我正在编写一个使用WiX 3.0的MSI,我正试图弄清楚如何使其包含除目录中的一些文件以外的所有文件,而无需手动指定每个属性。类似于installshield中的动态拾取。

我正在寻找的旧安装程序(使用WiX 2.0)执行以下操作:

  1. 一个调用脚本的makefile,它将所有必需的文件复制到一个单独的目录结构中,该目录结构模拟最终产品的安装方式。
  2. 另一个脚本,用于将此临时文件夹中每个文件的属性插入到部分完成的wxs文件中。
  3. WiX运行
  4. 我想避免这一步,并想知道是否有一些命令或预处理器指令来实现这个WiX本身?

    此外,上面的第一步会将一些生成的文件(来自工具)吐出,然后将其包含在wxs文件中。有没有办法可以效仿呢?

2 个答案:

答案 0 :(得分:7)

您需要指定每个文件。

但是,您可以使用Heat.exe自动生成可以包含在构建过​​程中的wxs文件。

答案 1 :(得分:0)

我用非解决方案跳了出来,并在构建脚本中压缩了目录及其文件。您当前方法的优点是MSI知道这些文件,并且它们可能是密钥文件(因此可以修补/升级和/或修复)。

我会研究saschabeaumont关于使用热量的建议。显然是一个更好的解决方案