PDA

View Full Version : VC6 Build Version Incremention


wyu
07-29-2005, 10:48 AM
Hi, I'm currently evaluating Visual Build Pro and I currently have a question about setting "File & Version" Number in a Visual Studio 6.0 Build. Based on the Visual Build help file I have to set the version number in the format of "x.x.x.x" with the period seperation. This will set both the "FILEVERSION" and "PRODUCTVERSION" in the rc files correctly with the comma seperation.
My problem now is that I need the String literal values to also be comma seperated but the Version number I have to enter in Visual Build needs to be "Period Seperated"

This is how i need the the String Literal Values to look like:

VALUE "FileVersion", "5, 0, 0, 114\0"
VALUE "ProductVersion", "5, 0, 0, 114\0"

Is there a way to set this value with the comma seperation with out having to write up a script.

kevina
07-29-2005, 04:32 PM
The Make VC6 action won't handle a comma-delimited value properly, but you can use the Make VS.Net action to update the resource file before you use the Make VC6 action to build since the Make VS.Net action will handle your version value correctly.

Just add a Make VS.Net step before your Make VC6 step, and specify the .rc file as the project/solution and provide your comma delimited value to it and configure it to update the appropriate values. Don't update the version with the Make VC6 step...

Another option is to continue specifying a period-delimited value to the Make VC6 step, then use a following Replace in File step to update the version values appropriately. Specify the appropriate rc file as the input file and use the following text values for the replacement (ensure you don't have the literal value checkbox set for the step):

- text or regular expression to find values:
(VALUE "FileVersion", ")(([[^\.]])*\.)(([[^\.]])*\.)(([[^\.]])*\.)(([[^\"]]*))(\")
(VALUE "ProductVersion", ")(([[^\.]])*\.)(([[^\.]])*\.)(([[^\.]])*\.)(([[^\"]]*))(\")

- Text or regular expression to replace matches with:
(?1($1)($3), ($5), ($7), ($9)($10))