Login
`
Templates, Tools and Utilities
|
||
Icetips Article
Back to article list
Search Articles
Add Comment
Printer friendly
Direct link
Par2: Get version number from Version Resource Template 2005-08-15 -- Brent Stock If you are referring to information from the cwVersionRes template, I have
written a little extension to get date/version/build version information and to
make it available at runtime. This allows you to use the global variables
where ever you want in your code - splash, about, window title etc.
Note: I put the a version date called "Date of Build" into the verUserValue1
field from the cwVersionRes template to help keep track of that as well.
Here is my template - use it if you find it valuable, ignore it if not. Note
this is written for a specific application called PRISM so you may want to
change the variable names to suit yourself. I use it "as is" in other apps
(the name does not matter to the app) and just keep the PRISM name, either way,
it WORKS!
#!-----------------------------------------------------------------------
#EXTENSION(PRISMInformation,'PRISM Information'),PROCEDURE
#!-----------------------------------------------------------------------
#DISPLAY('Brent H. Stock')
#DISPLAY('')
#BOXED('Title:')
#PROMPT('Variable:',FIELD),%PRISMTitleField
#ENABLE(%PRISMTitleField)
#PROMPT('Value:',@s50),%PRISMTitle,REQ
#ENDENABLE
#ENDBOXED
#BOXED('Version:')
#PROMPT('Variable:',FIELD),%PRISMVersionField
#ENABLE(%PRISMVersionField)
#PROMPT('Use Version Information?',CHECK),%PRISMVersionCheck,AT(10)
#ENABLE(NOT %PRISMVersionCheck)
#PROMPT('Value:',@s10),%PRISMVersion,REQ
#ENDENABLE
#ENDENABLE
#ENDBOXED
#BOXED('Date Changed:')
#PROMPT('Variable:',FIELD),%PRISMDateField
#ENABLE(%PRISMDateField)
#PROMPT('Use Version Information Date?',CHECK),%PRISMDateCheck,AT(10)
#ENABLE(~%PRISMDateCheck)
#PROMPT('Use Today?',CHECK),%PRISMDateToday,AT(10)
#ENABLE(~%PRISMDateToday)
#PROMPT('Value:',@d17),%PRISMDate
#ENDENABLE
#ENDENABLE
#ENDENABLE
#ENDBOXED
#BOXED('Build:')
#PROMPT('Variable:',FIELD),%PRISMBuildField
#ENABLE(%PRISMBuildField)
#PROMPT('Use Version Information Build?',CHECK),%PRISMBuildCheck,AT(10)
#ENABLE(NOT %PRISMBuildCheck)
#PROMPT('Value:',@s10),%PRISMBuild
#DISPLAY('BUILD# changes automatically on each day of build')
#ENDENABLE
#ENDENABLE
#ENDBOXED
#!-----------------------------------------------------------------------
#AT(%WindowManagerMethodCodeSection,'Init','(),BYTE'),PRIORITY(0)
#IF(%PRISMTitleField)
%PRISMTitleField='%PRISMTitle'
#ENDIF
#IF(%PRISMVersionField)
#IF(%PRISMBuildCheck)
#IF(%CWVersion>=6000)
%PRISMVersionField='%verProdMajVer.%(FORMAT(((%verProdMinVer*10)+%verProdSubVer),@N02))'
#!%PRISMVersionField='%verProdMajVer.%verProdMinVer.%verProdSubVer'
#ELSE
%PRISMVersionField='%VIFileVersionMH.%(FORMAT(%VIFileVersionML,@N02))'
#END
#ELSE
%PRISMVersionField='%PRISMVersion'
#ENDIF
#ENDIF
#IF(%PRISMDateField)
#IF(%PRISMDateCheck)
#IF(%CWVersion>=6000)
#SET(%PRISMDate,DEFORMAT(%verUserValue1,@D17))
#ELSE
#SET(%PRISMDate,%ProgramDateChanged)
#ENDIF
#ELSE
#IF(%PRISMDateToday)
#SET(%PRISMDate,%ProgramDateChanged)
#ENDIF
#ENDIF
%PRISMDateField=%PRISMDate !%(FORMAT(%PRISMDate,@D17))
#ENDIF
#IF(%PRISMBuildField)
#IF(%PRISMBuildCheck)
#IF(%CWVersion>=6000)
#SET(%PRISMBuild,%verProdBuildNo)
#ELSE
#SET(%PRISMBuild,%VIFileVersionLH*1000+%CurrentBuildNumber)
#ENDIF
#ELSE
#SET(%PRISMBuild,%ProgramDateChanged-72322)
#ENDIF
%PRISMBuildField='%PRISMBuild'
#ENDIF
#ENDAT
Today is November 21, 2024, 3:54 am This article has been viewed 35226 times.
|
|