We have both a Python script and a C# assembly that work hand in hand with CruiseControl to check-out (from Perfoce), modify and submit (to perforce) a C++ header file where we #define the version label:
#define FILE_VERSION 1,0,5,52
#define STRING_FILE_VERSION "188.8.131.52"
Those are used in the native resource file (.RC) and the modification is performed as the first step of the daily build.
I'd like to keep using TeamCity built-in features instead of relying on outside code (Python, C# or PowerShell) to create a build step to change to that header file. Any help would be much appreciated.