Subject Re: [IBO] NEW: IB/FB Client DLL Selector example
Author Nando Dessena
Frank,

F> the final release of Firebird 1.5 is approaching, and i am fascinated
F> esp. by the Embedded version. Playing around with this, it's nice to
F> be able to choose between GDS32.dll, fbclient.dll and fbembed.dll
F> without altering code in an application, e.g. to test the behaviour of
F> an app against different Release Candidates or FB/IB server versions.

I agree; I was hoping to have fbembed take care of all this, instead
of IBO itself (which is just one of the many middleware solutions
Delphi people use, not to mention other development environments).
Actually, fbembed is already able to act as a client as well as an
embedded server, the only thing it lacks is the ability to forward a
local connection string to a local server (without involving TCP/IP,
that is).

If this last capability isn't added to fbembed before the official
release, I would have to try to teach IBO how to use two clients, but
*at the same time* (that's why I wouldn't be able to use your
solution). This would involve moving all the function
pointers IBO uses into something that is instantiated once per
session (or pooled). A quick glance at the sources shows it should be feasible;
then a simple property in IB_Session (which would have to be set
before the session is opened) would be used to select the client
library. Two sessions, two client libraries.
Another thing that would be needed is convince Jason that it makes
sense, which it does only if the Firebird folks don't do the right
thing (bury all this complexity right where it belongs: into
fbembed).

That's why unfortunately I couldn't take advantage of your work - but
I think it can be useful to many that don't want to use fbembed as a
client for whatever reason.

Ciao
--
Nando mailto:nandod@...