【问题标题】:How to include the output of heat in a wix file? (No Visual Studio project)如何在 wix 文件中包含热量的输出? (没有 Visual Studio 项目)
【发布时间】:2016-08-05 17:45:46
【问题描述】:

我需要构建一个安装程序,出于各种原因,我想避免使用 WiX 项目模板。我很高兴自己编写这些东西的脚本,并且已经有一个自定义的构建过程来适应它。

我相信我很好地理解了 WiX 蜡烛、热量和灯光工具的作用,我正在熟悉 wxs 文件格式,并且我可以运行 heat 来生成我想要的文件片段输出。但是我不知道如何将其合并到我的 wxs 文件中。大概在某个时候,我会在 wxs 中引用文件片段文件……但我不太清楚这里的正确语法是什么。

【问题讨论】:

    标签: .net wix windows-installer installation heat


    【解决方案1】:

    在描述目标目录结构的 wxs 文件中,在 TARGETDIR 下添加一个目录节点,如下所示:

    <Directory Id="TARGETDIR" Name="SourceDir">
        <Directory Id="DYNAMIC" Name="Dynamic">
    

    在列出功能引用组件的 wxs 文件中,添加组件组引用:

    <Feature Id="MyFeature">
        <ComponentGroupRef Id="MyComponentGroup"/>
    

    像这样调用热(添加更多参数到你的幻想):

    "C:\WIX\bin\heat.exe" dir "C:\SourceDir" -cg MyComponentGroup -ke -srd -dr DYNAMIC -sfrag -o "C:\MyProject\Dynamic.wxs"
    

    将此 Dynamic.wxs 添加到您的 Candle 调用中。将其结果 (wixobj) 添加到您的 Light 调用中。

    【讨论】:

    • 解决引用问题中的文件或片段点的问题,您不要将其作为一个整体进行引用;您只需引用它包含的元素,例如,ComponentGroupRef。当然,您也可以将文件作为源传递。
    • 谢谢,我认为我想出了如何让它发挥作用,你帮助了我。现在我有一个更完整的问题:stackoverflow.com/questions/38858803/…
    猜你喜欢
    • 2015-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-21
    • 2012-04-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多