我最近将我们公司的安装程序分为两个功能(一个启用,一个不启用),为了允许用户同时选择,我使用了UI_Mondo GUI来允许选择。
我已经设法让我们的自定义动作工作,如果功能被选中:
<Custom Action="RestartIISForASPNet4" After="AspnetRegIIS"><![CDATA[(NOT INSTALLED) AND (&WebServiceFeature=3) AND NOT (!WebServiceFeature=3)]]></Custom
我尝试过,但由于某种原因,它出现了错误(IMO,它不能在日志中WixUI_InstallMode被设置为InstallComplete。
<Custom Action="RestartIISForASPNet4" After="AspnetRegIIS"><![CDATA[((NOT INSTALLED) AND (&WebServiceFeature=3) AND NOT (!WebServiceFeature=3)) OR WixUI_InstallMode = "InstallComplete"]]></Custom>
有人知道我错过了什么吗?这可能是很明显的。
WixUI_InstallMode是一个私有属性。这意味着它在installeexecutesequence期间(当您的自定义操作运行时)使用其默认值。
一个解决方案是使用自定义操作将其值保存在公共属性中。然后你可以在你的条件中使用这个公共属性。公共属性的名称中不包含小写字母