2016-08-05 70 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 –