我正在为Visual Studio解决方案收集一个目录.
到目前为止,它可以在我的本地系统上运行,可能是因为项目构建顺序得到了尊重.
当我在构建服务器上运行安装程序时,它会找到正确的目录,但在构建安装文件时尚未创建.它抛出一个HEAT5052错误说The directory 'a:\b\c' could not be found.
在构建所有项目引用之后,有没有办法"等待"直到或执行heat命令?
小智 10
好的,所以我花了几个小时来弄清楚如何在Heat所有参考文献被重新开发后开火.我只找到了解决方案<PreBuildEvent>,并<PostBuildEvent>使用Heat与命令行BeforeBuild和AfterBuild目标.
所以我在wix2010.targets文件Program files (x86)\MSBuild\Microsoft\Wix\夹中找到了文件中的
所有类型的目标.它包含一个被调用的目标AfterResolveReferences,它就是这样做的.所以这是我最终得到的代码(以防有人感兴趣):
<Target Name="AfterResolveReferences">
<HeatDirectory
ToolPath="$(WixToolPath)"
OutputFile="Product.Binaries.wxs"
SuppressFragments="$(HarvestDirectorySuppressFragments)"
Transforms="Filter.xslt"
Directory="$(HarvestFolder)"
DirectoryRefId="MY_FOLDER"
ComponentGroupName="Binaries"
GenerateGuidsNow="true"
SuppressRootDirectory="true"
SuppressRegistry="true"
PreprocessorVariable="var.App.TargetDir">
</HeatDirectory>
</Target>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1714 次 |
| 最近记录: |