在Heat.exe中Wix构建“AssignTargetPath”错误

时间:2016-02-24 16:43:38

标签: visual-studio-2012 wix build-process

我搜索了这个网站和其他人,似乎找不到任何遇到此特定错误的人。任何信息都可能有所帮助。

构建内容Wix时出现以下错误。该解决方案的其余部分构建得很好,包括Infrastructure Wix和MPS.Content Wix。

  

heat.exe(0,0):错误HEAT5313:收获期间构建错误:   C:\ WINDOWS \ Microsoft.NET \框架\ v4.0.30319 \ Microsoft.Common.targets(2132,5):   “AssignTargetPath”任务意外失败。

2 个答案:

答案 0 :(得分:1)

事实证明,TFS中的文件夹结构太长,因为Web服务项目中使用的文件之一在内容WIX中被引用。

所以我将我的TFS文件夹从“C:\ Projects \ Enterprise \ etc ...”重新映射到“C:\ Projects \ E \ etc ...”,这显然足以改变文件夹结构长度因为它能够建立。

答案 1 :(得分:0)

我不知道这是否会对你有所帮助,但我总是将其作为模板用于收集带有热量的文件(唯一需要更改的是目录值。

在你的wixproj文件中:

  <Target Name="BeforeBuild">
<HeatDirectory NoLogo="$(HarvestDirectoryNoLogo)" SuppressAllWarnings="$(HarvestDirectorySuppressAllWarnings)" SuppressSpecificWarnings="$(HarvestDirectorySuppressSpecificWarnings)&#xD;&#xA;" ToolPath="$(WixToolPath)" TreatWarningsAsErrors="$(HarvestDirectoryTreatWarningsAsErrors)" TreatSpecificWarningsAsErrors="$(HarvestDirectoryTreatSpecificWarningsAsErrors)" VerboseOutput="$(HarvestDirectoryVerboseOutput)" AutogenerateGuids="$(HarvestDirectoryAutogenerateGuids)" GenerateGuidsNow="$(HarvestDirectoryGenerateGuidsNow)" OutputFile="HeatGenerated.wxs" SuppressFragments="$(HarvestDirectorySuppressFragments)" SuppressUniqueIds="$(HarvestDirectorySuppressUniqueIds)" Transforms="%(HarvestDirectory.Transforms)" Directory="C:\Users\Bla" ComponentGroupName="Serviceware_CommonAssemblies" DirectoryRefId="PATHNAME" KeepEmptyDirectories="true" PreprocessorVariable="var.SourceDir" SuppressCom="%(HarvestDirectory.SuppressCom)" SuppressRootDirectory="true" SuppressRegistry="%(HarvestDirectory.SuppressRegistry)">
</HeatDirectory>

然后在你的wxs文件中:

   <Directory Id="TARGETDIR" Name="SourceDir">
  <Directory Id="ProgramFilesFolder">
    <Directory Id="PATHNAME" />
  </Directory>
</Directory>

并在wxs中链接已收集的文件:

    <ComponentGroupRef Id="Serviceware_CommonAssemblies"  />