2013-02-12 62 views
0

根據WiX文檔,每個文件都應該用組件標籤包裝。 它的含義是什麼?如果我把一個組件分成多個文件呢?我沒有找到 關於主題的明確答案。它如何影響產品升級?每個文件的組件標籤

+2

這裏的Theres一個很好的解釋:http://stackoverflow.com/questions/4987382/wix-guid-using-rules/4987509#4987509 – 2013-02-12 16:28:09

回答

0

基本上,它會打破你的安裝程序中的「修復」選項。想象一下場景,你有一個組件的3個文件:你有

<Component Id="FilesToInstall"> 
    <File Id="FileA" Source="[PathToFileA]" KeyPath="yes" /> 
    <File Id="FileB" Source="[PathToFileB]" /> 
    <File Id="FileC" Source="[PathToFileB]" /> 
</Component> 

通知設置文件爲的keyPath之一,你纔可以設置每個組件之一。

現在,如果由於某種原因FileA在安裝後被刪除或損壞,您可以執行修復並且Windows安裝程序將檢查該文件,發現它被刪除或損壞並標記組件以進行重新安裝。然後這將用安裝程序內的正確版本替換FileA,FileB和FileC。

然而,如果FILEB或FileC丟失或損壞,但FILEA還行,則Windows安裝程序將不會取代任何東西,因爲它會看到組件爲有效。