Hi,
we are using the GetContextService(...) method and GetVersionName() to determine which version our current executable is running. We use this check if there is a new PBRuntime available in our own database (we save the runtime as a blob in our database), if there is, we download the runtime. We used this method to upgrade from PB 07 to PB09, to PB11 and then to PB 12.5 (yes, we go a long way)
We are deploying our products with the new PB 2017 now, the GetVersionName() returns '17.0.0' for both PB 2017 and PB2017 R2. To bad for us (i was hoping the R2 would return 17.0.1), this way we see no difference in the pbruntime. Gladly we just starting upgrading our clients using the R2 only. But, if the R3 comes out, we probably want to upgrade to this version. I assume the GetVersionName() will also return '17.0.0'. So is there a better way to detect which exact version of PBRuntime the executable is running (without checking the properties of a fixed dll, which name changes every PB version)?
Greetz
Pieter
my thoughts exactly, although the DLL versioning in the name is not a problem for me. For deployment of our apps, we distribute the correct 'dlls' in the same folder as our App (so in deployment there is no sharing dlls at all). Although i never understood why they added the 'major' versioning in the name of the dll while windows had a built-in versioning system. Of course, this is historicly, so not the 'fault' of Appeon...
As for the PB Runtime check in our Apps, we only check the first three 'levels' (majorrevision, minorrevision and fixesrevision) to determine the PB Runtime version so we would have to add the build number as well. This does not fit in our internal versioning database so we have to make soms changes to be able to do this (but this is our problem of course).
Greetz
Pieter