我已经将wix安装为Visual Studio中的插件。我正在尝试搜索PC上是否存在MATLAB版本9.2,然后允许安装或中止安装。为此,我做到了
<Property Id="MATLABRUNTIMEEXISTS">
<RegistrySearch Id="Matlab_runtime_search"
Root="HKLM"
Key="SOFTWARE\MathWorks\MATLAB Runtime\9.2"
Name =" MATLABROOT"
Win64="yes"
Type="raw"/>
</Property>
<Condition Message="This application requires RUNTIME 9.2. Please install the Matlab runtime 9.2 then run this installer again.">
<![CDATA[Installed OR MATLABRUNTIMEEXISTS]]>
</Condition>
它工作正常,并且PC上没有MATLAB时,安装程序将暂停。但是即使安装了MATLAB之后,它也会停止安装程序。
MATLABROOT
键是“ REG_SZ”和“ C:\ Program Files \ MATLAB \ MATLAB运行时”。
所以我要测试的实际上只是MATLABROOT
键的存在。
我在其他问题中看到人们正在使用<util:RegistrySearch>
,但我无法使用它。即使我已经添加了UtilExtension
作为引用,我仍然收到错误消息“不受支持的扩展元素”。
有人可以建议我要使其真正起作用需要做什么吗?