在delphi中使用DCC32.exe生成

在delphi中使用DCC32.exe生成,delphi,delphi-5,Delphi,Delphi 5,您好,我正在使用以下命令构建我的delphi项目: Command: dcc32.exe project.dpr d:\exe_folder 上面的命令运行良好,我能够在输出文件夹中删除exe。但是,当我通过IDE构建同一个项目时,在每个构建上,构建编号都会增加,因为我选中了“Auto-incrementbuildnumber”选项。但在通过命令行执行时,构建数量并没有增加。通过命令行修改生成信息/版本信息的任何选项 谢谢 否,内部版本号的自动递增是IDE的一项功能。您可能需要使用适当的脚本语

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

Command: dcc32.exe project.dpr d:\exe_folder
上面的命令运行良好,我能够在输出文件夹中删除exe。但是,当我通过IDE构建同一个项目时,在每个构建上,构建编号都会增加,因为我选中了“Auto-incrementbuildnumber”选项。但在通过命令行执行时,构建数量并没有增加。通过命令行修改生成信息/版本信息的任何选项


谢谢

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

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

  • 让脚本读取IDE管理的.res文件
  • 增加构建编号
  • 重新创建.res文件
  • 构建项目

  • 为了实现这一点,我认为您需要对IDE生成的.res文件中的内容进行反向工程。但这很容易。任何合适的资源编辑工具都可以帮助您做到这一点。

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

  • 运行你的应用程序以增加版本号
  • 使用brcc32.exe编译RC脚本(in-RC脚本,out-RES文件)
  • 使用dcc32.exe和新的.res文件编译应用程序
  • 注意:别忘了将带有版本信息的RES文件包括到您的项目中:

    {$R "yourversioninfofile.res"} 
    

    这就是我写作的目的。

    :(:(谢谢你的回答。任何自动递增的提示都会被告知。我正在使用project.rc,在这里我提到了版本信息。我手动将版本信息更改为该.rc文件,然后它将在通过cmd构建后生效。现在这意味着我必须自动递增该.rc文件中的更改。我是否正确,或者在其他地方我必须更改ange?有这样一个问题:但当您使用Delphi 5.0时,不确定它能提供多少帮助。是的,没错。Update.rc,compile to.res,都是作为构建脚本的一部分。不确定您是否可以在IDE工具旁边使用自己的脚本版本。我个人认为IDE工具无法根据我的需要进行定制,所以永远不要使用它。请参阅此处了解详细信息VERSIONINFO节的RC语法示例:0。读取现有的.res文件以获取当前版本号。感谢该程序。但当我运行它时,它出现错误:dzPrepBuild version 1.3.0.353 build 2011-02-27异常:文件不存在。(eVersionInfo).有什么想法吗?谢谢sam.@SamChen see提供了最新版本,该版本确实有效。谢谢您的回复,但仍然失败,出现错误:dzPrepBuild版本1.3.1.506 Build 2013-03-04错误:文件不存在。(ENoVersionInfo).I使用:prepbuild--ReadDof=ProjectName--IncBuild--exec=prep.cmd。dof文件确实存在于项目文件夹中。这些是准确的错误消息吗?它们通常应该包含完整的文件名。是的,它就是这么说的。嗯,谢谢