Dominique Luis wrote:

I used FireBird as a stand alone Desktop DB many years ago and would like to use it now in a new project.

I'm trying to find information about embedding the latest 3.x release into my Desktop Application on Windows and Mac. I plan to use C#/.NET.

I found, but was unable to find fbembed.dll any any of the zip files or installations for 3.x, so am unsure if this documentation is up to date or not.

Can anyone provide links or information about best practises with the above in mind?

Helen Borrie answers:

Under the new unified engine there is no separate library for embedded. For Windows, just use the .zip file and decompress it where you want to use it. In the new architecture, your connection string just has to be "serverless" and your application, located in the same root, will make an embedded connection (if it can) through the fbclient.dll that is already there. The client will know from the serverless path to plug in the Engine12 provider, located in the pluginssub-directory.

You can weed out anything you don't need from the root folder and the won't need firebird.exe, for example.

Rules, restrictions and minimum requirements apply as before. On Windows, you won't need the security database, so Firebird doesn't require a password in your connection structure (although your application might require you to enter one: from Firebird's p.o.v., it can be anything at all). You will need a user name (and possibly a role) if your database has user privileges installed.

On MacOSX and other POSIX, as far as I know, it hasn't changed much, except that the Engine12 provider plug-ins that are installed must be present and the client library is (or probably .dylib on MacOSX). You still install the Classic kit and use the "serverless" path to connect, as before. Though I haven't tested a recent POSIX kit, I think you might still need to enable authentication if the logged-in [system] user is not the same as the user for which the required SQL privileges are defined. Hopefully someone will step in and correct me if I'm wrong about this.

Be aware (as you will be, if you studied the release notes) that aliases.conf is called databases.conf in Fb 3 and in future.

Like this post? Share on: TwitterFacebookEmail

Related Articles


Firebird Community



Gems from Firebird Support list