为了检查是否安装了.NET框架,您可以使用以下条件:
<Condition Message="This application requires .NET Framework">
<![CDATA[Installed OR NETFRAMEWORK20]]>
</Condition>
我不明白为什么两个子条件(Installed,NETFRAMEWORK20)与OR
运算符组合在一起,而我希望这两个条件与AND
结合使用:
<![CDATA[Installed AND NOT NETFRAMEWORK20]]>
我的误解在哪里?
答案 0 :(得分:15)
因为<Condition>
元素是安装程序继续的条件(并且仅在条件失败时才使用该消息)。
因此,如果 ,我们希望继续运行此安装:
如果<Condition>
只是NETFRAMEWORK20
,有人刚刚卸载了.NET Framework,然后尝试卸载程序包,则情况会失败并显示消息“此应用程序需要.NET Framework “ - 这会很烦人。