1

I am challenged with creating an automated release for a legacy Delphi (Delphi 2006) project.

I am a complete Delphi noob. So my question is maybe heading in a wrong direction ...

As far as I understood the release process of the given project it works like this:

  • A developer opens the project in Delphi Studio
  • Right-Click on the Project -> Properties -> Version Info
  • He sets the new version number of the next release in the Dialog.
  • He saves the project. This automatically generates the corresponding .resx file which contains the version number in binary form.
  • The .bsproj and the the .resx are checked in into source control
  • The automated build (Hudson) picks up the change and builds the release.

I would like to automate this process, since there are several projects that needs to get a new version number for each release.

I guess I could easily manipulate the .bsproj with a custom tool since it is xml.

However I am struggling with the generation of the .resx file which is currently done when saving the project in Delphi Studio.

Is there a way to automate the generation of the .resx? i.e. with a commandline-tool or something similar?

Or is there a smarter approach?

Any help is appreciated.

jbandi
  • 17,499
  • 9
  • 69
  • 81

1 Answers1

2

You can do it all in a batch file

  1. Update the version numbers as specified in this SO question: change version number at build time

  2. Use the DCC command-line compiler to build all the projects. There's plenty of documentation for that, basically you do just dcc32 <project>.dpr

DCC is e.g. documented here or here

I do wonder where your .resx files come from, but they can be converted as well. See this SO post.

Give it a go using these resources and for specific issues write a new SO question with your attempts so far.

Community
  • 1
  • 1
Jan Doggen
  • 8,799
  • 13
  • 70
  • 144