0

我想设置一个自动软件分发过程,最好来自 Microsoft Visual Studio,它在所有不同的配置和平台中构建我的项目,并将所有创建的对象打包在预定义的文件夹树结构中。

软件分发包将用于用 C/C++ 编写的 Windows 库和 WDM 驱动程序项目。每个库都有针对不同平台(即 x86 和 x64)的几种不同配置(即 Windows 7 发行版、Windows XP 发行版、MT/MD 运行时编译标志)。类似的事情发生在司机身上。没有任何自动创建软件分发包的过程,有必要为每个平台构建所有不同的配置,然后将创建的对象复制到预定义的文件夹结构,然后压缩创建的文件夹,为其提供发布名称和版本。这个过程非常耗时且容易出错。因此,我的目标是使用一个干净的好解决方案来自动化这个过程。

我已经对此进行了几周的研究,并且实际上已经实施了一些不同的解决方案。然而,到目前为止我实施的解决方案都不是完美无缺的。因此,由于这应该是我想许多开发人员已经遇到过的问题,所以我想听听不同的意见,关于什么是一个好的和有效的方法来做到这一点。

到目前为止,我已经尝试了以下方法:

  • NMAKE 使用的批处理脚本和 Makefile。这不太好,因为很难设置在 Visual Studio 项目中设置的相同构建参数。
  • 实现了一个“部署”目标任务(编辑 .vcsproj 文件),它为每个配置/平台调用项目的 MSBuild,并将生成的文件复制到分发目录。这样做的好处是我可以从 Visual Studio 中启动部署活动,但它也会产生一些环境变量问题,特别是在构建 Windows 驱动程序时。

任何想法或建议的解决方案将不胜感激。

提前致谢。

锡安

4

1 回答 1

1
  1. 如果您还没有,请为每个库和驱动程序添加一个构建后步骤,将构建的文件复制到您的特定树中并压缩它们。

  2. 如果您还没有,请创建一个 Visual Studio 解决方案(.sln 文件)来一次构建所有这些项目。

  3. 如果您还没有,请使用 Build | 设置构建配置。配置管理器对话框。现在从 IDE 中,您应该能够指定特定配置并执行 Build | 重建解决方案并确保所有项目都已成功构建。

  4. 从命令行,您现在可以通过打开 Visual Studio 命令行提示符(它适当地设置环境变量)来自动化 #3。使用适当的命令行参数启动 devenv.exe 。

于 2013-07-06T16:36:09.953 回答