我完全没有找到有关支持Target的多个条件的信息。具体来说,根据项目配置,我希望AfterBuild
做不同的事情。
例如,如果项目配置为A,我想运行批处理a.bat,如果项目配置为B,则运行b.bat。我的WiX项目文件具有以下目标:
<Target Name="AfterBuild" Condition="'$(Configuration)'=='A'">
<Exec Command="c:\installers\a.bat" />
</Target>
<Target Name="AfterBuild" Condition="'$(Configuration)'=='B'">
<Exec Command="c:\installers\b.bat" />
</Target>
现在,WiX专家已经知道这不起作用。当 编译并执行时,WiX只会尊重最后AfterBuild
目标的愿望。我查看了有关在<Condition>
中使用Target
的信息,但看起来这只对其他元素有效。
任何人都可以使用正确的XML语言来支持目标中的多个条件吗?
编辑 - 也许唯一的答案是将$(配置)作为参数传递,然后让批处理文件排序?
答案 0 :(得分:1)
Condition
不仅有Target
属性,而且您还可以将其与Exec
(以及我正在使用的Copy
之类的其他属性一起使用)。因此,您只需在<Exec>
目标中放置多个<Copy>
和AfterBuild
元素,就可以了。