2013-02-26 42 views
2

所以我使用Wix來安裝我的應用程序,它工作的很好,並且做了我需要的一切。我現在面臨的一個問題就是這個。我使用下面的命令行參數在我的VS 2010預生成事件命令:WIX Heat,通過加熱改變子目錄的名字?

heat.exe dir "C:\My Main Folder" -cg MyApplication -gg -scom -sreg -sfrag -dr APPLICATIONROOTDIRECTORY -var var.MyApplication -out "..\..\MyApplication.wxs" 

我的問題是,所生成的文件.wxs給我下面的文件夾結構:

<Fragment> 
    <DirectoryRef Id="APPLICATIONROOTDIRECTORY"> 
     <Directory Id="dirB19DCB4311BD6C765579FE56A2C72DF8" Name="My Main Folder"> 

我的問題是,如果有一種方法可以通過一個可以改變「我的主文件夾」目錄名稱的參數,因爲截至目前,我正在手動更改它,但這非常無效,並且使得我們不能一個自動構建過程。如果任何人有任何建議或地方,我可以看看這將是偉大的!現在我正在利用「WiX:開發人員指南到Windows安裝程序XML」這本書來嘗試找到解決方案,但沒有找到任何東西。

回答

4

根據你準備做什麼,我會試圖使用-srd來禁止生成根目錄,然後將參數-dr更改爲指向具有正確名稱的目錄。

除此之外,我認爲唯一的其他簡單選項可能是XSL變換,您可以通過指定參數-t來使用該變換。

+0

該訣竅。從來沒有想過要壓制生成根目錄謝謝!對於那些使用與我相同的書的人,如果發現這個問題,您可以在第52-56頁找到這些信息 – Jimmy 2013-02-26 22:03:58

1

由於ChrisPatrick建議您可以使用-srd來禁止生成根目錄並使用您自己的-dr

heat.exe dir "C:\My Main Folder" -srd -dr "DIRNAMEHERE" 

您可以在這裏找到更多的信息,heat documentation