2013-12-17 187 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应用程序。它给包缓存错误。有没有解决这个问题的方法? –

相关问题