Subject RE: [firebird-support] Re: How to test for firebird version running on PC?
Author Adrian Wreyford
Adrian Wrote:

>I need to somehow test for the version of Firebird running on a PC,
>during
> installation of my application.
>
> Is there a registry key, that I can test for?
>



Adam Replied:
You could always connect to the database. If that fails, it is not
installed on the default port. If it works, try and run a query using
some new FB2 feature like execute block or derived tables. If it
fails, it isn't FB2.



>Adrian Wrote:
> If any prior version is installed ..Stop firebird service .. uninstall
> firebird, then install fb2.0
>

Adam Replied:

Whoa. Not so fast there.

Your installer will break third party applications if they are not FB
2 ready (which includes at least one module in my app). Your software
should not pretend it 'owns' the default instance of the database
server. I know if our customers on a whim decided to upgrade the
server without checking and then encountered a support issue because
something stopped working, they would be charged for the support time,
and when they do finally figure out the server version is changed,
they will uninstall and reinstall the original version, which might
break your app.



My new Reply:



Dear List, Adam



I understand your concern for other apps using Firebird1.5, that may be
broken. I have this information included in my installer, and yep it will be
the DBA doing the install, so they should know what to do.

I still want to test for the version running, so as to prompt correctly, and
branch my installer sensibly.



I notice that when I run the Firebird 2.0 installer, on a system that
allready has Firebird 2.0 installed, it lets me know that a Firebird 2.0
service is running on the PC.



On a PC running Firebird 1.5 it reports the following:

Pre-Installation analysis indicates that 1 existing Firebird or Interbase
version has been found.

Firebird 1.5.2.4731 Full installation of Superserver and development tools.
(Installation appears to be correct) .. it then give options.



Well if the Firebird Installer does this, I cannot see why I cannot do the
same thing, carefully raising warnings as to other apps that rely on older
vesions of Firebird that may be broken!



My Question once again to the list is:

How did you get it right for the installer?

Where can I see the script for the installer?

Any pointers here will be welcomed?

Can you point me to the place on firebirdsql.org where I can find this info?

Perhaps the person that wrote the Firebird installer can give me some
pointers?



Thanks Adrian



[Non-text portions of this message have been removed]