2016-08-05 37 views
0

我需要构建一个安装程序,出于各种原因,我想避免使用WiX项目模板。我非常乐意自己编写这些东西,并且已经有了一个自定义的构建过程,以适应这一点。如何在wix文件中包含热量输出? (没有Visual Studio项目)

我相信我理解了WiX蜡烛,热和光工具的作用,我很熟悉wxs文件格式,并且我可以运行加热来生成我想要的文件碎片输出。然而,我不知道如何将其纳入我的wxs文件。据推测,在某些时候,我会在wxs中引用文件片段文件......但我无法弄清楚正确的语法在这里。

回答

3

在您的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呼叫中。

+0

寻址引用问题中的文件或片段点时,不要将其作为整体引用;您只需引用它包含的元素,例如'ComponentGroupRef'。当然,您也将该文件作为源文件传递。 –

+0

谢谢,我*想*我想出了如何使它工作,你帮助了我。现在我有一个更全面的问题,虽然:http://stackoverflow.com/questions/38858803/invalid-defaultdir-when-running-light-in-wix –

相关问题