首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >文档元素名称' WIX‘的Wix错误无效

文档元素名称' WIX‘的Wix错误无效
EN

Stack Overflow用户
提问于 2011-05-19 23:59:42
回答 2查看 4.9K关注 0票数 2

我有多个由heat.exe生成的wxs文件。每个文件都有一个根元素Wix,两个子片段,每个片段元素分别有一个DirectoryRef和ComponentGroup元素。样本如下:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Fragment>
        <DirectoryRef Id="ANEXMCM">
            <Component Id="cmp06C5225B7EE36AAEA9ADB0AF882F1053" Guid="2924A2A0-D7A2-407E-B9B8-B40AAE1204ED">
                <File Id="filABF39DC4BC6ED4474A2C2DB1C1681980" KeyPath="yes" Source="SourceDir\content.txt" />
            </Component>
        </DirectoryRef>
    </Fragment>
    <Fragment>
        <ComponentGroup Id="ANEXMCM_CID">
            <ComponentRef Id="cmp06C5225B7EE36AAEA9ADB0AF882F1053" />
        </ComponentGroup>
    </Fragment>
</Wix>

我将这些文件包含到主WIX文件中。当我试图构建我的项目时(我尝试了Visual Studio和SharpDevelop,我甚至尝试了命令行),我得到的错误是“文档元素名称'Wix‘是无效的。Windows Installer XML include文件必须使用'Include’作为文档元素名称。(CNDL0048) - C:\WorkingDir\anexmcmsetup.wxs:2”。我不知道如何修复这个错误。非常感谢您的及时帮助。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2013-02-08 20:23:15

我遇到了类似的问题,因为我没有正确地实现片段……

碎片的基本解释可以在这里找到……

http://wix.tramontana.co.hu/tutorial/upgrades-and-modularization/fragments

我的实例中的

在我的特定场景中,我将我的安装程序拆分为两个wxs文件。

主要xml文件)包含我从获得的所有文件的

  1. FilesFragment.wxs - xml文件)。

我的错误之处在于,我认为我需要在Product.wxs中包含一些引用FilesFragment.wxs的引用。与您在c++项目中所做的类似。例如,我假设如果我想在我的主安装中包含一个名为wixfile.wxs的额外的wxs文件,我需要一些

<?include wixfile.wxs?>

这是一个错误的假设。这种关系是在你的项目文件中建立的(以.wixproj结尾),有了它,它就知道文件存在。

在Product.wxs文件中,我需要设置一个具有Id的ComponentGroupRef的特性,该ID引用了我的FilesFragment.wxs文件中的ComponentGroup ID。

文件内容示例...

Product.wxs文件

代码语言:javascript
复制
 <Feature Id="ProductFeature" Title="Setup MaxCut" Level="1">
  <ComponentGroupRef Id="FilesFragment" />
</Feature>

FilesFragment.wxs文件

代码语言:javascript
复制
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
    <DirectoryRef Id="APPLICATIONFOLDER">
        <Component Id="xyz" Guid="{abc...}">
            <File ... />
        </Component>
    ...       
    </DirectoryRef>
</Fragment>
...

<Fragment>
    <ComponentGroup Id="FilesFragment">
        <ComponentRef Id="xyz" />
    </ComponentGroup>
</Fragment>

这就达到了我所需要的。我想这也是你想要做的吧?

票数 5
EN

Stack Overflow用户

发布于 2011-10-29 19:34:32

对于包含的xws-File,我也有相同的错误信息。我将此文件的构建操作从"Compile“更改为"None”,错误消失。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6061455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档