因此,对于必须在 Team Build/MSBuild 环境中集成遗留项目/代码的构建/编译的任何人来说,这是一个问题 - 特别是 Visual Basic 6 应用程序/项目。
除了编写自定义构建任务(我不反对)之外,是否有人对如何最好地将遗留 VB6 项目的编译和版本控制集成到 MSBuild 构建中有任何建议?
我知道 CodePlex 处的 FreeToDev msbuild 任务但目前他们已被撤回。
理想情况下,我希望版本和编译代码以及捕获 msbuild 日志的编译输出(尤其是错误)。
我已经看到有关在自定义任务中封装此功能的建议,但真的想知道是否有人尝试过其他解决方案(除了执行 shell 命令)-
从本质上讲,有人有“更清洁”的解决方案吗?
理想情况下,使用执行命令将是最后的手段。
最佳答案
我正在使用 Nant每天构建 VB6 项目。这确实使用 Nant execute 命令进行构建(我们构建 4 个项目作为一个“解决方案”的一部分)。
它还允许您在源控制存储库中标记版本、获取最新代码、 checkin 、 checkout 、所有正常要求、编译更新/安装程序、将文件复制到所需位置并发送结果的电子邮件。
尽管您只能获得 VB6 命令行编译提供的输出,但记录的结果相当少。
对于版本控制,我必须编写一个小应用程序来提取我编译的可执行文件的版本号并将其写入一个文本文件,然后 Nant 可以读取和使用(用于标签、文件名等)(有点痛苦,但 VB 生成无论如何版本号都不符合)。
有关其他非核心任务的帮助,请参阅 NAntContrib - 来自上面的 NAnt 链接。
关于VB6 与 MSBuild 的集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/160881/