Wix构建顺序-msbuild&;热度
我正在尝试用Heat扩展我们现有的Wix项目,以包括安装程序中另一个项目的输出目录中的所有文件。不知何故,我错过了一些应该很容易的事情,因为我想这是一项非常普通的任务 以下是解决方案的外观:Wix构建顺序-msbuild&;热度,msbuild,wix,Msbuild,Wix,我正在尝试用Heat扩展我们现有的Wix项目,以包括安装程序中另一个项目的输出目录中的所有文件。不知何故,我错过了一些应该很容易的事情,因为我想这是一项非常普通的任务 以下是解决方案的外观: SomeDependencyA.csproj SomeDependencyB.csproj (Depends on SomeDependencyA) WindowsService.csproj (Depends on SomeDependencyB) Installer.wixproj(Depends on
SomeDependencyA.csproj
SomeDependencyB.csproj (Depends on SomeDependencyA)
WindowsService.csproj (Depends on SomeDependencyB)
Installer.wixproj(Depends on WindowsService.csproj)
Wix基本上应该从WindowsService输出文件夹中grep任何内容,并从中构建msi包。这一过程应当是:
- 构建所有依赖项
- 构建WindowsService项目
- 用热产生碎片
- 构建安装程序
这是我的问题:我必须在哪里/如何包括对热火的呼吁?预生成步骤和BeforeBuild目标不起作用,因为此时尚未生成WindowsService和依赖项。后构建不会有帮助,因为此时生成的片段将不再联合排序。我一直在寻找一些构建目标,这些目标是在所有依赖项构建完成之后,但在安装程序项目本身构建完成之前调用的。应该很容易,但我还没弄明白。构建前目标可能会在依赖项目完成构建之前发生 我过去用于这种类型的构建顺序的解决方案是为BeforeBuild目标添加DependsOnTargets 对于csproj:
<Target Name="BeforeBuild" DependsOnTargets="ResolveReferences">
对于vcxproj:
<Target Name="BeforeBuild" BeforeTargets="PrepareForBuild">
这将迫使项目在运行BeforeBuild目标之前等待相关项目完成