错误CNDL0200:WixBalExtension架构

时间:2014-05-22 12:50:00

标签: xml wix xsd

我的wxs文件内容:

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Bundle Name="Sample" UpgradeCode="C8C5D724-FCDC-49b5-8556-4A95EC6F5B12" Version="1.0.0.0" Manufacturer="XXX">
    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense">
      <bal:WixStandardBootstrapperApplication LicenseUrl="" SupressOptionsUI="yes" />
    </BootstrapperApplicationRef>
    <Chain>
      <MsiPackage Id="msifcbovj12_lvw" Name="MSIFile" SourceFile="D:\MSIFile.msi" />
    </Chain>
  </Bundle>
</Wix>

当我运行 candle.exe 时,我会收到以下错误:

错误CNDL0200:BootstrapperApplicationRef元素包含未处理的扩展元素'bal:WixStandardBootstrapperApplication'。请确保已提供“http://schemas.microsoft.com/wix/BalExtension”命名空间中元素的扩展名。

URI http://schemas.microsoft.com/wix/BalExtension返回:“您要查找的资源已被删除,名称已更改,或暂时无法使用。”

我尝试了http://sourceforge.net/p/wix/feature-requests/742/中引用的替代方案,但未解决。

在我的WixProject中添加了wix installer schema not found的库的相应引用,但未解决。

我快要放弃了。这是一个错误吗?

2 个答案:

答案 0 :(得分:3)

运行candle.exe和light.exe时请尝试以下参数,这应该可以解决您的问题:

candle.exe -ext WixBalExtension yourwxsfilename.wxs
light.exe -ext WixBalExtension yourwxsfilename.wixobj

答案 1 :(得分:3)

由于搜索了相同的错误消息,我最终在这里,但在我的情况下,我在Visual Studio中使用了WiX项目。虽然时间有点晚了,但我想我会为我的问题变化提供解决方案,以防将来有人(就像我这样)在这里结束。

事实证明,我需要做的是转到解决方案资源管理器,右键单击WiX项目的参考文献,然后单击“添加参考...”。然后在“添加引用”窗口的“浏览”选项卡中,确保您位于安装了WiX的文件夹的“bin”子文件夹中(“C:\ Program Files(x86)\ WiX Toolset v3.10”)我的情况),选择适当的“Wix ____ Extension.dll”(对我来说是“WixUtilExtension.dll”),点击“添加”按钮,然后点击“确定”。

如果您不确定哪个“Wix _____ Extension.dll”是合适的,请在WiX Toolset Manual Table of Contents中找到您要使用的扩展元素( nb 链接适用于WiX版本3 。X)。这样做可以帮助你搞清楚。