2013-12-17 78 views
2

我有5個安裝程序,有些可能需要安裝在同一臺機器和其他位置。每個用戶都有自己的用戶輸入自定義用戶界面,爲安裝的應用程序設置配置選項。WIX捆綁安裝程序,選擇要安裝的軟件包

我需要用戶能夠從完整安裝程序中選擇他們想要運行的安裝程序。就像您如何選擇標準安裝程序中的功能一樣。但是,如果用戶更喜歡只抓取所需的msi,我仍然需要這些獨立的安裝程序。

有沒有像自定義其他wix項目類型一樣將自定義UI步驟添加到引導安裝程序的方法?

+0

那麼究竟是什麼問題?你試過什麼了? – Isaiah4110

+0

更新了一個更具體的問題。我一直在尋找wix bundle安裝程序中「功能」樹的最佳方法,但沒有任何運氣。否則我還沒有嘗試過任何東西,因爲我正在尋找正確的方式來做到這一點。 –

回答

6

標準的WIX Bootstrapper應用程序(WixStdBA)不支持這一點,您將不得不自定義標準應用程序代碼以實現您要查找的內容。

不用編輯stdba,你可以看看codeplex中的WIXEXTBA項目:WIXEXTBA。該項目已包含您正在尋找的一些功能。

要在較高的水平編輯標準BA,你必須遵循以下步驟:

InstallCondition屬性可以用來控制一個包是否應該安裝:

<MsiPackage Id='MsiName' InstallCondition='RadioButton' SourceFile='\msiname.msi' /> 

定義你的「單選按鈕」變量:

<Variable Name='RadioButton` Value='1' Persisted='yes' /> 

現在爲您的RadioButton定義到wixstdba中的UI的關係。您可以通過覆蓋主題文件並將單選按鈕添加到使用RadioButton作爲控件的@Id的選項頁面來完成此操作。

+0

這有什麼新東西嗎?我面臨着類似的用例,我只需要用戶安裝SQL Express時,他們不打算使用現有的SQL Server。 – RugerSR9

+0

這有效,但進一步使用InstallCondition設置爲false跳過msiname.msi後,如果我手動安裝msiname.msi。我無法卸載父Bootstrapper應用程序。它給包緩存錯誤。有沒有解決這個問題的方法? –

相關問題