为了检查是否安装了.NET框架,您可以使用以下条件:
<Condition Message="This application requires .NET Framework">
<![CDATA[Installed OR NETFRAMEWORK20]]>
</Condition>
Run Code Online (Sandbox Code Playgroud)
我不明白为什么两个子条件(Installed,NETFRAMEWORK20)与一个OR
运算符组合,而我会期望这样的情况,其中两个条件都与AND
:
<![CDATA[Installed AND NOT NETFRAMEWORK20]]>
Run Code Online (Sandbox Code Playgroud)
我的误会在哪里?
Dam*_*ver 15
因为<Condition>
元素是安装程序继续的条件(并且仅在条件失败时才使用该消息).
所以,我们要继续运行此安装,如果两种:
如果<Condition>
只是NETFRAMEWORK20
,有人刚刚卸载了.NET Framework,然后尝试卸载您的软件包,则该条件将失败并显示消息"此应用程序需要.NET Framework" - 这将非常烦人.