Spe*_*nce 5 wix visual-studio-2010 dynamically-generated
我们使用HEAT为我们的Web项目安装程序构建文件.我想知道是否有一种方法可以将文件包含在编译中,但不包含在项目中.
我需要这个的原因是我想不检查我们的源代码控制中的文件,但是在我们构建wixproj时构建它.否则,我们必须劫持/签出文件才能可靠地构建项目.
如果您使用MSBuild和.wixproj来构建.MSI,则需要将输出从.wixproj HEAT中的Compile项目中列出.如果未包含该文件,则不会将其编译到最终的.MSI中.
幸运的是,MSBuild提供了很多动态包含项目的选项.例如,您可以在.wixproj中运行自定义目标HEAT并添加输出
<Target Name='RunHeat'>
<Exec Command='heat.exe param param param -o path\to\output.wxs' />
<ItemGroup>
<Compile Include='path\to\output.wxs' />
</ItemGroup>
</Target>
Run Code Online (Sandbox Code Playgroud)
现在,如果您在RunHeat目标之前运行Compile目标,wix.targets则Compile生成的项目RunHeat将包含在Compile目标中.鉴于MSBuild的灵活性,可能还有十几种其他方法可以完成此任务.
希望有所帮助,祝你好运!
| 归档时间: |
|
| 查看次数: |
748 次 |
| 最近记录: |