WIX安装程序。仅根据功能检查条件

时间:2016-04-11 19:47:09

标签: wix

我有条件检查是否安装了IIS,但我只想执行此检查,如果将安装服务器功能,而不是客户端。我尝试在功能中添加级别,但我无法通过猜测或其他帖子找到正确的语法,并希望得到一些帮助?我正在使用WIX 3.10。

谢谢

<Condition Message="Install requires IIS 7 or higher version.">
  <![CDATA[Installed OR (IISMAJORVERSION AND (IISMAJORVERSION >= "#7" OR IISMAJORVERSION = "#10"))]]>
</Condition>


  <Feature Id='Feature.Server' Title='Receiver' Description='Server' Level='2'>
    <ComponentGroupRef Id='Server.Components'/>
    <ComponentRef Id='Server.Configuration' />
    <ComponentRef Id=' Server_VirtualDirComponent'/>
  </Feature>

  <Feature Id='Feature.Client' Title='Client' Description='Client' Level='1'>
    <ComponentGroupRef Id=' Client.Components'/>
    <ComponentRef Id='Client.Configuration' />
    <ComponentRef Id='Client_VirtualDirComponent'/>
  </Feature>

1 个答案:

答案 0 :(得分:0)

conditional syntax &Feature.Server = 2 OR !Feature.Server > 2表示服务器功能已安装或未安装。

如果MSI预先确定是否安装了该功能,您可以选择更换&#34;已安装的&#34;部分你的情况。如果用户可以选择它,您可能需要将整个事物移动到类型19自定义操作,在用户选择功能后安排一段时间,因为在此之前评估启动条件。 (在这一部分我可能是错的,测试两种方式来看看哪些有效)。