Joh*_*ith 5 windows-installer wix wix3 visual-studio-2012
我正在使用Wix 3.8为我创建的Visual Studio项目创建MSI安装程序.我按照这个简单的教程,但即使只是这个简单的Wix项目,我收到错误.这是我的
我已将我的VS2012项目添加为我的Wix安装程序的参考.
这是我的 Product.ws档案:
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'
xmlns:iis='http://schemas.microsoft.com/wix/IIsExtension'>
<Product Id="*" Name="MyProjectInstaller2" Language="1033" Version="2.0.0.0" Manufacturer="Company" UpgradeCode="7f5b63be-bdad-4cc9-b4df-b3f1648c0539">
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
<MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />
<MediaTemplate />
<Feature Id="ProductFeature" Title="MyProjectInstaller2" Level="1">
<ComponentGroupRef Id="ProductComponents" />
</Feature>
</Product>
<Fragment>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLFOLDER" Name="MyProjectInstaller2" />
</Directory>
</Directory>
</Fragment>
<Fragment>
<ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
<!-- TODO: Remove the comments around this Component element and the ComponentRef below in order to add resources to this installer. -->
<!-- <Component Id="ProductComponent"> -->
<File Source="$(var.MyProject.TargetPath)" />
<!-- </Component> -->
</ComponentGroup>
</Fragment>
</Wix>
Run Code Online (Sandbox Code Playgroud)
当我编译它时,我收到以下错误:
The ComponentGroup element contains an unexpected child element 'File'.
Run Code Online (Sandbox Code Playgroud)
我搜索了互联网的内容,以解决这个非常基本的问题.为什么VS2012无法识别元素?
您应该遵循下一个层次结构:ComponentGroup - > Component - > File等.在您的示例中,我建议您将File元素放入单独的组件中,然后将此组件添加到ComponentGroup中.尝试这样的事情:
<Component Directory="YOUR-DIRECTORY" Guid="your-guid" Id="SomeComponent">
<File Source="$(var.MyProject.TargetPath)"/>
</Component>
<ComponentGroup Directory="INSTALLFOLDER" Id="ProductComponents">
<ComponentRef Id="SomeComponent"/>
</ComponentGroup>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1580 次 |
| 最近记录: |