Subject Re: Can't find or load FBCLIENT.DLL - In Exe's Directory?
Author inoffensive_2006
--- In, Helen Borrie <helebor@...> wrote:
> At 08:02 PM 7/06/2008, you wrote:
> >Hi Folks:
> >
> > Developing on XP Home, Visual Studio 2008, C++,
> >, IBPP.
> >
> > Attempting to run on Windows XP Media.
> >
> > I'm working on several projects, this one uses
> >Firebird's embedded server.
> >
> > An app is installed in \Program Files\<App name>.
> >
> > This directory has the the app's .exe, the six
> >required Firebird files, fbclient.dll, firebird.conf,
> >firebird.msg, and the three icu*30.dll files.
> >
> > Istart the application and am hit with this when
> >the app tries to open the database:
> >
> > Can't find or load FBCLIENT.DLL or GDS32.DLL
> >
> > I've always assumed that if the DLL is in the same
> >directory as the .exe, things would be fine.
> It is - but it won't work if you don't rename fbembed.dll to
fbclient.dll. And it won't work if this file in not in the same
directory as your application executable.

Thanks Again Helen:

The file is named fbclient.dll, and it's in the same
directory as the application's executable.

I'm trying to see if I can get some applications that
work fine on my developmental PC to run on a machine that
mimics the client's PC, with no C Run time and other C++
support files.

After this small program couldn't find fbclient.dll,
I was dreading the next experiment. Getting a big server
based application running on the test PC.

Inno put the application in it's directory, along with
Firebird's super server and a couple of other files, and
I launched the app from the INNO script. The application
then called the firebird executable for a silent
installation into it's own directory, asked the user for
admin and app DB passwords, ran gsec and copied files
between the Firebird and app . That complex operation
went off without a hitch. It all came up fine, ready
to do work.

I feel like I've bagged an elephant, and have a bunny
threatening to kill me.

As usual Helen, I appreciate your advice.