如何根据所选要素

时间:2015-05-22 11:26:53

标签: wix windows-installer installer msi-gui

我想在功能之后的UI序列中添加自定义对话框 选择(自定义)对话框。功能选择通过a完成 特征树。我怎样才能弄清楚某个特定功能是否存在 选择并启动自定义对话框?

现在我有以下代码 在这种情况下,它显示VirtualDirectoryDlg,然后显示SqlDatabaseDlg。我希望它仅在选择了该功能时显示SqlDatabaseDlg,如果它被禁用则不应显示它。

我可以提供一些示例或教程,因为我对它完全陌生。感谢

  <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="VirtualDirectoryDlg" Order="1"><![CDATA[&WebApplicationFeature = 3]]></Publish>
  <Publish Dialog="CustomizeDlg" Control="Next" Event="NewDialog" Value="SqlDatabaseDlg" Order="2"><![CDATA[&WebApplicationFeature <> 3]]></Publish>

我见过以下内容,但无法弄清楚如何将它们与我的代码一起使用

  

功能表键&amp;功能的动作状态。功能表   关键!已安装的功能状态。

https://msdn.microsoft.com/en-us/library/aa368561(v=vs.85).aspx

1 个答案:

答案 0 :(得分:0)

如果我没记错的话,MSI有一个限制,即在您更改为另一个对话框之后,功能状态不会记录。你正在做对,它只是赢了工作。我将转换到另一个对话框(可能是SqlDatabaseDlg),然后在该对话框的下一个按钮上执行检查并转换到VirtualDirectoryDlg,或者如果未安装WebApplicationFeature,则会转到下一个对话框。