2009-10-16 62 views
5

我們的產品有多種客戶可以安裝創建爲獨立安裝包(MSI)的產品。HOWTO和最佳工作安裝(MSI)chainer +/bootstrapper

我們有一個要求,具有單包的安裝將:

  1. 顯示一個UI與進步
  2. 允許用戶選擇哪些功能/包安裝
  3. 有無約束一個能力功能到另一個(例如去除或添加效果其他)
  4. 支持單個海拔(UAC)
  5. 很高興能夠自動更新(不是必須的)
  6. 支持命令行+靜默安裝
  7. 包應建了隔離設施(連鎖它們)
  8. 引發錯誤/消息缺少必備
  9. 隨着時間的推移支持補丁和重大升級

今天我們使用MSI進行幾乎所有的上述操作,嵌套安裝是不好的做法,我們在解決方案中面臨着太多問題。

我知道有幾個bootstrappers那裏(M $通用引導程序,我認爲是不好的,BURN是不夠成熟的WIX版本)

你知道其他?那工作和測試已經? 什麼是最好的方法(沒有將MSI統一到單個MSI中)

+0

雖然我明白,維克斯的刻錄是年輕,甚至沒有在產能釋放的是,恕我直言,因爲一旦公佈,可能是值得一試(帶WIX 3.5)它很可能很快成爲新的「標準」。 – ewall 2009-10-19 20:02:50

+0

我同意這一點,個人認爲,燒傷將提供我所需要的一切,如果不是我可以加強它:), 還有另一種選擇使用NSIS創建自定義引導程序,這也是簡單的... 令人驚歎的部分是我正在問一個問題,即每個公司都應該問,但沒有快速和良好的答案 - >這裏有業務 – 2009-10-19 20:09:09

回答

1

在Wix's Burn準備就緒之前,我們對引導程序沒有多少選擇。

如果您使用InstallShield作爲您的msi設計器,您可以嘗試的一件事是創建一個包含所有不同msi包的InstallScript項目。然後你可以靜靜地安裝所需的軟件包。 InstallShield雖然非常昂貴,但如果你還沒有它,你可能不得不最終開始自己的引導程序。

2

創建一個InstallShield InstallScript包。使用InstallScript包將「.qs」中的.MSI逐個引出。我這樣做,並取得了成功。我相信它符合你列出的所有要求。

6

dotNetInstaller看起來很有前途。我正在試驗它以安裝java作爲先決條件。它帶有一個GUI編輯器,所以你不必整理xml來創建一個項目。配置文件在xml中,並且可以從命令行運行InstallerLinker。它可以與構建服務器集成,儘管一些msbuild任務會很好。

項目主頁:
http://dotnetinstaller.codeplex.com/

教程:
http://www.codeproject.com/KB/install/dotNetInstaller.aspx

+0

我有興趣修改其用戶界面,尤其是閃爍的進度條。你有任何提示嗎? – 2014-02-04 11:25:55

+0

你可以試試dotnetinstaller的htmlInstaller。聽起來像普通的dotnetinstaller,但有一個可以自定義的html基礎UI。我還沒有使用htmlInstaller,但它看起來很有希望。 – mcdon 2014-02-04 16:39:35

+0

是的,我確實嘗試過,但似乎沒有提供太多的修改.... – 2014-02-05 17:49:44