2015-06-03 173 views
1

我需要用MSBuild手动使用WiX,我试图创建test.wixproj。我只是在学习如何使用WiX创建一个部署者,并且我被阻止了。 我只是将我的img.png部署到定义的剧目中。无法识别WiX元素

我有这个(test.wixproj):

<?xml version="1.0" encoding="UTF-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Product Id="*" UpgradeCode="" Version="1.0.0.0" Language="1033" Name="My Application Name" Manufacturer="My Manufacturer Name"> 
     <Package InstallerVersion="300" Compressed="yes"/> 
     <Media Id="1" Cabinet="myapplication.cab" EmbedCab="yes" /> 


     <Directory Id="TARGETDIR" Name="SourceDir"> 
      <Directory Id="ProgramFilesFolder"> 
       <Directory Id="APPLICATIONROOTDIRECTORY" Name="Application test"/> 
      </Directory> 
     </Directory> 


     <DirectoryRef Id="APPLICATIONROOTDIRECTORY"> 
      <Component Id="myimg" Guid=""> 
       <File Id="myimg" Source="...\Desktop\img.png" KeyPath="yes" Checksum="yes"/> 
      </Component> 

     </DirectoryRef> 


     <Feature Id="MainApplication" Title="Main Application" Level="1"> 
      <ComponentRef Id="myimg.png" /> 
     </Feature> 
    </Product> 
</Wix> 

当我跑 “的MSBuild test.wixproj”,我有这样的错误:

test.wixproj < 2.1>:错误MSB4068:该项目“Wix”在此 上下文中未被识别或不被支持。

我迷路了,你能帮我吗?我很难理解这是如何工作的。

EDIT1:我正在尝试使用.wixproj和.wxs,现在我还有其他问题。

The project was not found 

我复制这个例子your link

EDIT2:我认为这是此行是问题的根源。

<Import Project ="$(WixTargetsPath)" /> 
+0

这是一个“.wxs”文件,重命名为“.wixproj”文件。您需要按照[此处](http://wixtoolset.org/documentation/manual/v3/msbuild/authoring_first_msbuild_project.html)所述创建适当的“.wixproj”文件。或者使用VS插件添加一个VS项目。 –

+0

哦,是的,我很愚蠢。我将尝试使用.wxs和.wixproj – Neyoh

+0

我的链接中描述的示例存在问题。 – Neyoh

回答

1

ComponentRef应该通过Id引用Component。当没有带该Id的组件时,您正在使用myimg.png作为您的ComponentRef ID。尝试将ComponentRef ID更改为“myimg”。

<ComponentRef Id="myimg" />

哦,作为一个侧面说明,你应该如果你要发布到网上删除你的代码中的GUID。