2011-11-29 55 views
1

我使用WiX3.5中提供的heat.exe來獲取我想要安裝的文件的組件和componentref列表。然而,對於應安裝爲Windows服務的文件,我不希望它生成heat.exe,因爲我需要添加<ServiceInstall>使用WiX heat.exe和靜態組件

我不想把<serviceinstall>放在xslt,因爲它會使它非常醜陋的代碼。現在,我在運行heat.exe之前刪除exe文件,然後將其複製回來,但這也不理想。有沒有更好的方法來做到這一點?

回答

2

我會說,調整XSLT模板的熱量輸出是一種推薦的方法。雖然熱量並不像您提到的那樣具有豐富的功能,但它將XSLT應用於輸出的能力涵蓋了所有可能的需求。

爲什麼你認爲代碼會很醜陋?你在這裏引用XSLT語法還是一般調整wxs文件的想法?無論如何,我猜這段代碼不會改變那麼多。一旦你對它進行了徹底的編碼和調試,將來你的時間不會太多。

+0

安裝服務是我的WXS的關鍵任務之一,我想在WXS中保留這個關鍵代碼。如果放置在xsl文件中,它會隱藏起來。我不知道是否可以使用xslt刪除該節點。 – Vikram

+0

它也可能是一個選項,將服務相關文件從熱收穫的文件夾中移出,並手動爲其創建WXS。是的,XSLT功能非常強大 - 您可以將收集的代碼片段刪除,然後手動添加。這裏有很多選擇... –

+0

謝謝嚴。我會試一試。 – Vikram