Wix“Product元素包含启动条件下的意外子元素util:RegistrySearch”错误消息

时间:2013-02-22 17:34:40

标签: wix wix3.5 wix3.6

我是Wix的新手,我的任务就是这个。

安装程序应提示“应用程序需要Reportviewer”消息。它应检查是否已安装reportViewer,如果没有,则在安装开始时抛出消息。

这就是我想要做的事情(因为我仍然不了解细节而随意尝试)

<Condition Message="This application requires ReportViewer.">
  <![CDATA[ReportViewerV10 OR ReportViewerWow64V10]]>
</Condition>

<util:RegistrySearch
 Root="HKLM"
 Key="SOFTWARE\Microsoft\ReportViewer\v10.0"
 Value="Install"
 Variable="ReportViewerV10"
 Win64="yes"
  />
<util:RegistrySearch
Root="HKLM"
Key="SOFTWARE\Wow6432Node\Microsoft\ReportViewer\v10.0"
Value="Install"
Variable="ReportViewerWow64V10"
Win64="yes"
  />

1 个答案:

答案 0 :(得分:3)

您需要在WIX项目的主容器标记中添加对http://schemas.microsoft.com/wix/UtilExtension的引用,以引用util:RegistrySearch。

文档看起来像

<?xml version="1.0"?>
<Include xmlns="http://schemas.microsoft.com/wix/2003/01/wi">
.
.
.
</Include>

<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2003/01/wi">
.
.
.
</Wix>

您可以将此实用程序调用仅保留在Bundle代码或Fragment代码中。

有关详细信息,请参阅RegistrySearch Element (Util Extension) Documentation。 有关更多提示,请参阅WIX Documenation