代码之家  ›  专栏  ›  技术社区  ›  Coincoin

如何将整个目录或项目输出添加到WiX包

  •  52
  • Coincoin  · 技术社区  · 17 年前

    我们决定从VS集成设置切换到WiX。

    我在WiX中找不到任何类似的功能。WiX似乎要求每个目录和文件都有一个目录条目和一个文件条目。这将要求我们在每次添加文件时更改WiX源代码,在我看来,这是禁止的,因为我们有这么多文件。

    有没有什么集成的方法可以使用WiX来实现这一点,或者我必须在调用candle之前编写自己的任务来创建WiX源代码?

    5 回复  |  直到 15 年前
        1
  •  24
  •   Coincoin    17 年前

    对于WIX3.0,加热提供了与动物脂相同的功能,稍微好一点。

    在我的例子中,我使用了mallow源代码,并对其进行了一些修改,因为石蜡需要3.5版本的.Net。

    你可以用 Mallow

    或石蜡工具生成WiX片段: Getting started The pain of WiX , A better tallow, Paraffin Download Paraffin for WiX 3.0

        2
  •  19
  •   stankovski    14 年前

    documentation

    以下是一个例子:

    -sreg-sfrag-dr INSTALLDIR-out“$(ProjectDir)Fragments\FileFragment.wxs” -var wix.InstallerPath

        3
  •  4
  •   JasonBirch    16 年前

    Paraffin 3.0

    基本上,对于给定的发布版本,第一次执行时,我们将使用“ generate “为源文件夹创建新的.wxs文件的操作,每个文件都有特定的选项。

    regen “调用操作以确保使用添加的任何新文件/目录更新.wxs文件。

    Brian Rogers writes . 我仍然对石蜡通过维护静态guid来更明确地实现这一点感到更舒服,但当前的热点看起来是一个不错的选择。

        4
  •  3
  •   Coincoin    17 年前

    经过进一步研究,似乎有一个包含的名为tallow.exe的二进制文件就是这样做的。它通过递归搜索文件从目录中创建一个片段。

        5
  •  0
  •   EdgarVerona    17 年前

    这不会阻止您为WIX编写自己的前端,该前端将在通过目录结构的内容进行解析后生成wixxml文件(或其中的一部分)。这就是我们在工作中使用的一个系统的基本功能。这与任何代码或文本文件生成实用程序的想法相同。只需遍历树,并生成适当的文本。

    编辑:这样,您可以将WIX视为定义安装程序的“低级语言”,并将实用工具作为“高级语言”。如果你需要帮助写一个,让我们知道。

    此外,通过将此实用程序添加到VStudio中的自定义构建步骤,可以在构建过程中生成WIX文件。这样,您实际上没有任何人构建的“保存的WIX文件”,系统只是在最后构建它,在构建后的步骤中自动考虑新文件。

    推荐文章