Autoincreasing build number

Here is a macro that auto-increments the version information  of your VC++ projects
with every new build. The behaviour is quite similar to the version autoincrement in
VisualBasic or Delphi.

The Macro searches for the FileVersion section of your projects resource script. The last
number of this quadrupel is automacilly increased and written back to the file. At last the
project is build as by pressing F7.

As this macro includes full functionality of F7 you can map it to F7 to include the version
auto-increment in your build routine.

To access this Version info from within your application use the CVersionInfo class by
Roberto Rocco presented elsewhere on www.codeguru.com


Sub IncResVersion()
‘DESCRIPTION: Build active project and increase version counter in rc script. Map it to F7 for ease of use. (c)’98 Th. Mahler

‘ open the project’s resource script:
Documents.Open (ActiveProject.Name + ".rc"), "Text"
Windows(ActiveProject.Name + “.rc”).Active = True
‘ find line with FileVersion Information:
ActiveDocument.Selection.FindText “VALUE “”FileVersion””,”, dsMatchForward + dsMatchFromStart + dsMatchCase

‘ move to eol and then to end of build number:
ActiveDocument.Selection.EndOfLine
ActiveDocument.Selection.CharLeft dsMove, 3

‘ mark Build Number and store in strVersion
ActiveDocument.Selection.WordLeft 1 ‘dsExtend does not work in my VisualStudio???
Dim strVersion
strVersion = ActiveDocument.Selection.Text

‘ Increase Version and write back to file:
ActiveDocument.Selection.ReplaceText strVersion , strVersion+1

‘close RC file
ActiveDocument.Close()

‘build active project
ExecuteCommand “BuildToggleBuild”
Documents.SaveAll True

End Sub

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read