2012-09-25 68 views
-1

假設我們有msi x.msi,它正在安裝一個xap文件。是否可以覆蓋由其他msi安裝的xap文件?

我們想通過另一個msi覆蓋xap文件(例如使用y.msi)。

是否可以通過其他msi覆蓋?它會有任何問題,因爲它不會有任何關聯的版本號?

如果可能會發生什麼,如果我們卸載x.msi?

是否建議覆蓋由其他msi安裝的文件?

回答

2

即使是應用程序二進制文件,XAP文件也沒有版本資源,因此Windows安裝程序無法正確版本。因此,你可能會進入DLL地獄,因爲最後一個包會被安裝。

爲了緩解這種情況,可以考慮使用版本構建一個無意義的DLL,並將其用作組件的密鑰文件。這樣MSI將評估基於DLL版本的安裝。這應該可以防止XAP的版本衝突。

確保兩個MSI具有相同的組件標識並且組件標記爲共享。這將適應正確的引用,以便上次卸載將刪除該組件。

相關問題