2011-12-15 35 views
1

我有大量(> 500)的數據包(而不是程序文件),它們可以獨立安裝。數據包由我們的應用程序使用。什麼是安裝這些數據包的最佳方式?我想到了隱藏在刪除軟件控制面板中的msi文件。引導程序將用於選擇要安裝的軟件包。安裝大量的數據包

可能很難生成大量的msi文件並且很難爲大量的msi文件生成更新。

這樣的情況有更好的選擇嗎?

回答

1

這取決於您的具體要求和數據包的大小,但使用具有500個功能的單個安裝程序可能更容易。在這種情況下,它也不需要從控制面板隱藏。您可以從引導程序或腳本自動安裝所需的功能,請參閱WIX: How to Select Features From Command Line

無論哪種方式,如果您使用單個msi或500個不同的msi,我會建議投資代碼生成來創建wxi文件。並使用代碼生成器來同時生成支持文件,如引導程序。當你有一個更新時,你會希望代碼生成器做的最多,以避免必須做相同的更改500次。可能有可能使用T4,參見this example

+0

我打算使用MajorUpgrade作爲更新機制。 MajorUpgrade執行卸載,然後進行安裝。我不想卸載所有數據文件來更新程序。 – frast 2011-12-16 13:44:44

2

如果所有這些軟件包都是真正獨立的,那麼使用您提出的機制可能是有道理的。如果軟件包都非常小,則會進行權衡,因爲Windows Installer會爲每個軟件包添加一些啓動命中。如果您可以合併一些可能一起更新的軟件包,這可能有助於減少MSI的數量。

500只是很多獨立的軟件包。相比之下,所有的Visual Studio(一個巨大的產品,恕我直言)由130個MSIs組成。

我可以看到如何做到這一點以及使用燒錄在WiX的V3.6

+0

我看了一下燒傷了一下。我想我需要修改它以滿足我的需求。有沒有一種功能樹來選擇用戶想要安裝的MSI? – frast 2012-02-20 22:37:00