6

您好,我正在使用以下命令构建我的 delphi 项目:

Command: dcc32.exe project.dpr d:\exe_folder

上面的命令效果很好,我可以在输出文件夹中创建 exe。但是,当我通过 IDE 构建相同的项目时,每次构建时构建号都会增加,因为我已经检查了选项“自动递增构建号”。但是在通过命令行执行此操作时,内部版本号并没有增加。通过命令行修改构建信息/版本信息的任何选项?

谢谢..

4

3 回答 3

10

dcc32.exe 不能直接增加内部版本号。版本信息(包括内部版本号)来自每次由 IDE 更新的 *.res 文件。要绕过 IDE,您可以编写带有版本信息部分的 RC 脚本,这个小应用程序将增加此脚本中的内部版本号。然后,您可以使用以下操作创建 bat 文件进行构建:

  1. 运行您的应用程序以增加内部版本号
  2. 使用 brcc32.exe 编译 RC 脚本(输入 - RC 脚本,输出 - RES 文件)
  3. 使用带有新 .res 文件的 dcc32.exe 编译您的应用程序

PS 不要忘记在您的项目中包含带有版本信息的 RES 文件:

{$R "yourversioninfofile.res"} 
于 2012-08-20T14:59:21.240 回答
4

不,内部版本号的自动递增是 IDE 功能。您可能需要使用适当的脚本语言编写自己的自动增量工具。

如果您想在 IDE 的等效项旁边使用您自己的命令行自动增量,您需要执行以下操作:

  1. 让您的脚本读取由 IDE 管理的 .res 文件。
  2. 增加内部版本号。
  3. 重新创建 .res 文件。
  4. 构建项目。

为了完成这项工作,我认为您需要对 IDE 生成的 .res 文件中的内容进行逆向工程。但这很容易。任何体面的资源编辑工具都可以帮助您做到这一点。

于 2012-08-20T14:49:49.743 回答
1

这就是我写dzPrepBuild的目的。

于 2012-08-21T07:07:50.670 回答