嗨,我正在尝试添加启动条件,以检查安装的IIS版本是否大于7,否则它会显示符合性消息。
<PropertyRef Id="IISMAJORVERSION"/>
<Condition Message="Install requires IIS 7 or higher">
<![CDATA[IISMAJORVERSION AND (IISMAJORVERSION >= #7)]>
</Condition>
还尝试了IISMAJORVERSION> =“#7”和IISMAJORVERSION> =“#7”但 在未安装II的计算机上未显示条件消息。请帮忙。
答案 0 :(得分:0)
检查MSI :在Orca中打开已编译的MSI(or an equivalent tool-朝底部看)。 LaunchCondition
表中是否有条目? 我看不到该条件的编译方式 -当前状态。您可能已经链接了旧的目标文件或类似的文件。这意味着您当前的构建实际上无法生成新的MSI文件,您使用的是旧文件而没有注意到。
条件 :我认为您在条件格式方面存在错误,也许可以尝试以下方法:
<Condition Message="Install requires IIS 7 or higher">
<![CDATA[IISMAJORVERSION AND (IISMAJORVERSION >= "#7")]]>
</Condition>
请注意结尾处的双括号和两端的<和>字符以及#7周围的引号。我没有检查实际情况。第二部分还不够吗?
答案 1 :(得分:0)
由于IISMAJORVERSION是字符串,因此我们不能执行大于或小于的字符串。因此,我将条件修改为以下。
<PropertyRef Id="IISMAJORVERSION"/>
<Condition Message="Installer requires IIS 6 or 7 or higher versions installed on the machine.">
<![CDATA[(IISMAJORVERSION <> "") AND (IISMAJORVERSION <> "#1") AND (IISMAJORVERSION <> "#2") AND (IISMAJORVERSION <> "#3") AND (IISMAJORVERSION <> "#4") AND (IISMAJORVERSION <> "#5")]]>
</Condition>