Thanks Magnus. Much appreciated. Will --- Magnus Hagander <mha@xxxxxxxxxxxxxx> wrote: > > > HKEY_LOCAL_MACHINE\SOFTWARE\PostgreSQL\Installations\{317D0ED1 > > > > -8845-40DD-A028-0A3EB8E24F2E} > > > > "Version"="8.1-beta4" > > > > > > > > So it looks like the version number is > underneath > > > a key that > > > > changes with every new version (new Product > > > number). And I > > > > am therefore not sure if I can use this > knowledge > > > to identify > > > > the installed version. > > > > > > It changes once for each major version, meaning > there is > > one for 8.0 > > > and 8.1. The whole 8.0.x series share the same > id, as will > > the whole > > > 8.1 series (at least that's the plan). It > basically changes when > > > initdb is required to upgrade, which is why it > also changes between > > > betas. > > > > > > You can safely rely on these once you've seen > the ones for > > a release. > > > For example, don't use the beta4 one, wait for > the > > > 8.1 release one. > > > > > > > > > > Does anyone have a better idea for a more > reliable > > > > > > > identification method? > > > > > > Using these registry keys will reliably identify > any PostgreSQL > > > installations done using the MSI installer - it > won't pick up any > > > other install methods. For those, you could > either search the > > > filesystem, or attempt a connect to the default > port etc - > > but I think > > > those would either be too slow or a lot less > reliable. > > > > Hi Magnus, thanks for the quick response. > > Unfortunately I still have an issue with this > regsitry > > identification method because I'd like to code my > installer > > so that it can also identify the postreSQL > versions that were > > not available at the time I authored my install > check, i.e. > > future versions. > > > > In essence I know that my product works with > PostrgeSQL 8.0 > > and 8.1 and it my guees is that it will continue > to work with > > future PostgreSQL versions. So I'd like my > installer to be > > able to check that 8.0 or above is installed. > > To do this, enumerate the keys under > PostgreSQL\Installations. You can > count on future versions to register there with a > different GUID - so if > you enumerate everything that's there, you can look > at the Version value > to see the actual version. > > > //Magnus > __________________________________ Yahoo! Mail - PC Magazine Editors' Choice 2005 http://mail.yahoo.com ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org