我想设置一个自动软件分发过程,最好来自 Microsoft Visual Studio,它在所有不同的配置和平台中构建我的项目,并将所有创建的对象打包在预定义的文件夹树结构中。
软件分发包将用于用 C/C++ 编写的 Windows 库和 WDM 驱动程序项目。每个库都有针对不同平台(即 x86 和 x64)的几种不同配置(即 Windows 7 发行版、Windows XP 发行版、MT/MD 运行时编译标志)。类似的事情发生在司机身上。没有任何自动创建软件分发包的过程,有必要为每个平台构建所有不同的配置,然后将创建的对象复制到预定义的文件夹结构,然后压缩创建的文件夹,为其提供发布名称和版本。这个过程非常耗时且容易出错。因此,我的目标是使用一个干净的好解决方案来自动化这个过程。
我已经对此进行了几周的研究,并且实际上已经实施了一些不同的解决方案。然而,到目前为止我实施的解决方案都不是完美无缺的。因此,由于这应该是我想许多开发人员已经遇到过的问题,所以我想听听不同的意见,关于什么是一个好的和有效的方法来做到这一点。
到目前为止,我已经尝试了以下方法:
- NMAKE 使用的批处理脚本和 Makefile。这不太好,因为很难设置在 Visual Studio 项目中设置的相同构建参数。
- 实现了一个“部署”目标任务(编辑 .vcsproj 文件),它为每个配置/平台调用项目的 MSBuild,并将生成的文件复制到分发目录。这样做的好处是我可以从 Visual Studio 中启动部署活动,但它也会产生一些环境变量问题,特别是在构建 Windows 驱动程序时。
任何想法或建议的解决方案将不胜感激。
提前致谢。
锡安