How can I find the Progress version running in 4GL-code? I am interested in figuring out if I run 64 bit or not.
I am running 10.0B for 32-bit and 10.1A for 64, so getting the version in code would do the trick - but how?
Look up the PROVERSION function.
Consulting in Model-Based Development, Transformation, and Object-Oriented Best Practice http://www.cintegrity.com
Similarly, is it possible to get the version including the patch level without having to parse the $DLC\version file?
I've just found a couple of suggestions on PEG.
I'm not sure that the first suggestion will be preferable to parsing the version file.
The second suggests using Get-key-value on
"HKEY_LOCAL_MACHINE\SOFTWARE\PSC\Progress\" + PROVERSION +
The patch level looks to stored as a value called "Level"
This is more promising BUT looking at my registry, it seems it will be necessary to determine first whether WebClient is being used. If so, it will be necessary to examine the contents of
"HKEY_LOCAL_MACHINE\SOFTWARE\PSC\WebClient\" + PROVERSION
The patch level looks to be stored as a value called "PathLevel", not in its own key. This inconsistency is a minor annoyance.
To be honest, I think I'm going to read in the $DLC$\version file unformatted, treat it as space delimited and do a test for
LOOKUP(cRequiredVersion, cVersionFile, ' ') NE 0.
Anyone have any better ideas?