Setting file version number

Is anyone aware of a utility that is able to set the version number of a file(s)?

Failing that, a Delphi component that allows the writing of file attributes rather than just reading them.

Thanks

Ian H.
Sunday, March 20, 2005

Deleting …Approving …

A CVS tool do it naturally...

Ju
Monday, March 21, 2005

Deleting …Approving …

Any particular OS in mind?

sgf
Tuesday, March 22, 2005

Deleting …Approving …

Windows, specifically 2000 & XP.

Ian H
Tuesday, March 22, 2005

Deleting …Approving …

Do you mean the version details that show up if you right-click EXE files and DLLs in Windows Explorer? If so, these are defined with a VERSIONINFO resource, and you need a resource editor or resource compiler to link them into your EXE.

I need to be able to set the FILEVERSION string for a bunch of files (EXE and DLL), and yes, it is the values that appear on the right click - properties page.

We could use our IDE (Delphi) to do this but it gets too awkward when there are multiple users working on the application. In order for the IDE to do this, it needs write access to the project file(s) to update the values. To have this, the user needs to have the project file(s) checked out of the config system, which we are reluctant to do when no other actual changes are necessary. Also, only one person can do this at any one time.

In addition to this, our main sales agent has their own branded version of our application, along with a equivalent version numbers. eg our Version 7.4.2, is their 2.4.2.

So when we release 7.4.3 they will be releasing 2.4.3, and so need to modify the file version number.

Tony,

Thanks for the link to Resource Hacker, it does what we need. It's a shame it's not possible to do this from a command line, or call it from a batch file. I'm surprised there aren't any VCL/ActiveX components that allow the modification of these file properties?

Ian H.
Wednesday, March 23, 2005

Deleting …Approving …

Oups, after reading the help file fir Resource Hacker it looks like it can be used from the command line :-)