2009-10-17 88 views
8

有没有办法根据目录结构自动包含文件?WiX自动文件包含

我不想用文件ID选项卡添加每个文件名。

我的构建过程中创建所需的目录结构:

ProductName 
      Directory1 
      Directory2 
      Directory3 
      Directory4 

我如何添加这些目录及其子目录?

回答

6

不,不会自动。然而,有些工具(Wix的“tallow”或Wix3的“heat”)会扫描一个目录并为您创建一个Wix碎片(一个独立的WiX * .wxs文件),然后可以编译这个“filelist”。 WXS”文件(或者无论你怎么称呼它)到您的WiX的安装。

看到这个页面的WiX3 heat documentation和也应该有一个WiX2相当于在该站点牛油。

马克

16

有它还有一些很好的功能:

我对PARAFFIN.EXE的目标是它会立即生成可消耗的WiX碎片,并为您提供最小的麻烦。我想PARAFFIN.EXE满足最初的目录中创建一个.WXS片段以下要求:

  • PARRAFIN.EXE创造了独特的值组件,目录和文件的元素Id属性,所以你不必担心跨越大项目冲突
  • PARAFIN.EXE会在输出文件中的ComponentGroup元件与ComponentRef自动指定的文件中的所有构成要素值
  • 可以任选地被添加到所述片段.WXS排除特定的文件扩展名
  • 您可以选择性地排除目录包括通过指定部分名称
  • ,如果你想为
  • 您可以选择每个组件指定多个文件中的所有组件自动生成的GUID值,您可以选择指定(默认为每个组件一个文件)
  • 您可以选择指定您不想递归指定的目录以外的目录
  • 您可以在设置File元素 - Source属性时为目录名称指定别名,以便在输出中没有硬编码驱动器和目录名称。 WXS文件

使用PARAFFIN.EXE创建.WXS片段后,您不需要手动编辑片段,因此我希望PARAFFIN.EXE满足以下要求,以便从现有的创建更新的输出文件。 WXS片段:

  • 更新的输出被写入到一个文件.PARAFFIN所以原.WXS片段不被干扰
  • 创建初始.WXS片段时指定的所有命令行选项更新文件时被自动设置由PARAFFIN创建。EXE
  • 任何新的目录和文件中会自动添加到输出文件
  • 是目录结构的不再是一部分的任何目录和文件从输出文件
+2

链接[的石蜡去除](http://www.wintellect.com/CS/blogs/jrobbins/archive/2008/12/22/paraffin-3-0-now-with-full-wix-3-0-support.aspx)已损坏 - 我收到一个** 404错误。**你知道这个工具是否仍然存在吗? – Matt 2016-12-14 14:09:19

+1

新链接:https://github.com/Wintellect/Paraffin – garrettendi 2017-04-25 10:51:04