在我的wix安装程序中,我想检查一下我可以找到的ESRI ArcMap版本:
<Property Id="ARC10INSTALLED"> <RegistrySearch Id="Arc10Search" Root="HKLM" Key="SOFTWARE\ESRI\ArcGIS" Name="RealVersion" Type="raw" /> </Property>
我希望从10开始,我尝试使用这个条件完成它:
<Condition Message="ArcGIS Desktop 10 or 10.1 must be installed"><![CDATA[ARC10INSTALLED AND ARC10INSTALLED >= "10.0.0"]]></Condition>
但这似乎没有用,有什么建议吗?
RegistrySearch元素返回的值取决于@Type属性值,以及注册表中该值的数据类型.因此,如果您将raw指定为Type属性的值,则您将获得的结果很可能包含特定前缀.例如,如果它是REG_BINARY,您将获得前缀为#的值.您应该在比较操作中考虑这一点.
原文链接:https://www.f2er.com/windows/365178.html至于字符串比较,我会使用子字符串运算符supported by the MSI condition syntax.它支持’开头’,’结束’和’包含’,这看起来是识别你的价值的最佳方式10.你收到的价值的某个地方在ARC10INSTALLED属性中.