在 wix 的注册表中检查 .net framework 4.5.2

Check for .net framework 4.5.2 in registry in wix

如何使用 wix 在注册表中检查 .net framework 4.5.2。我试过这个

<Property Id="WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED"/>
<Condition
  Message="This application requires .NET Framework 4.5.2. Please install the .NET Framework then run this installer again.">
  <![CDATA[Installed OR WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED]]>
</Condition

但它不起作用。我正在使用 wix v3.10

最后,经过反复试验,我设法使用

解决了问题
<Condition
  Message="This application requires .NET Framework 4.5.2. Please install the .NET Framework then run this installer again.">
  <![CDATA[Installed OR NETFRAMEWORK45>="#379893"]]>
</Condition>

条件 returns 一个 DWORD 将以 # 符号为前缀 并且条件应该是

<![CDATA[Installed OR NETFRAMEWORK45>="#379893"]]>

379893Value of the release DWORD。可以从这里找到更多信息 Microsoft site

编辑:修正错别字。

尝试添加 ID 为 WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED

的 PropertyRef 元素
<PropertyRef Id='WIX_IS_NETFRAMEWORK_452_OR_LATER_INSTALLED' />