Solved

installation of firebird 2 client for Delphi application

Posted on 2008-06-10
21
1,672 Views
Last Modified: 2013-12-09
I have installed a Firebird superserver on a machine
I plan to write a client application running on other networked machines that will need to access the Firebird database
The application is written in Delphi using Interbase component (I already succeeded this with the Firebird embedded server but now this application of for multi-users)
What exactly do I have to copy on the client machine and where ?
Can I avoid to run an "installer" ?
Thanks
0
Comment
Question by:LeTay
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 11
  • 8
  • 2
21 Comments
 
LVL 14

Expert Comment

by:Daniel Junges
ID: 21758497
0
 

Author Comment

by:LeTay
ID: 21759151
I want to use the Interbase components, native in Delphi
But for this some Firebird client files must be installed on the client PC
My question is which ones ?
The references you provide do not answer this question..
0
 
LVL 14

Expert Comment

by:Daniel Junges
ID: 21759292
0
Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

 
LVL 2

Accepted Solution

by:
Ustin19 earned 500 total points
ID: 21766599
for native usage: deploy GDS32.DLL to client's system32 and all will work fine
0
 

Author Comment

by:LeTay
ID: 21766984
Well, I have copied gds32.dll in the client system32 but I still get an error message when starting the .exe (I translate, it is in french) Interbase DLL gds32.dll not found in the path. Please install Interbase to use this functionality
???
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767337
try put gds32.dll into directory with exe
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767369
try to deploy with exe (to the exe folder):
fbclient.dll
ib_util.dll
icudt30.dll
icuin30.dll
icuuc30.dll
msvcp71.dll
msvcr71.dll
and rename fbclient.dll to gds32.dll
This files located in "C:\Program Files\Firebird\Firebird_2_0\bin\"
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767387
any registry\system installations NOT requires
0
 

Author Comment

by:LeTay
ID: 21767432
Tried. I get exactly the same message (gds32.dll not found in the path)
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767546
try explicitly choose tibdatabase.libraryName (if it is possible to use FIB) or look to IBHeader.pas and explicitly choose gdi32.dll (if it is not).
Then it may be corrupted gdi32.dll (code of loading is very simple)
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767549
 IBLibrary := LoadLibrary(PChar(IBASE_DLL));
  if (IBLibrary > HINSTANCE_ERROR) then <some getprocaddress calls, one of them fails>. So check version
0
 

Author Comment

by:LeTay
ID: 21767649
Well, the gdi32.dll I put on the client is the one I found on the server where I installed the full thing.
LibraryName is not a property of TIBDatabase (Turbo Delphi 2006).
Info : the application runs fine on the server itself, and also on another client where I installed Firebird client only using the installer of Firebird. But I want to avoid having to do this (except if not possible otherwise), and "deliver" just what is needed (I like installers that just need to copy a few files)
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767807
try to deploy firebird.msg near gds32.dll (or near executable)
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21767859
GDI32.DLL is my mistyping!
Have just trided on clear windows: copying firebird.msg & fbclient.dll to the folder with application solves described problem
0
 

Author Comment

by:LeTay
ID: 21768321
Yes of course, gds32.dll, not gdi
I copied everything but the message is still the same : Interbase DLL gds32.dll not found etc...
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21769305
gds32 imports:
ADVAPI32.dll KERNEL32.dll MPR.dll MSVCR71.dll USER32.dll WS2_32.dll
if MSVCR71.dll does not exists (you may have troubles with environment variables) - create it or put into same dir with gds32 and exe.
Also it can needed to have record in C:\WINDOWS\system32\drivers\etc\services:
gds_db 3050/tcp
so, last chance is using instreg.exe from C:\Program Files\Firebird\Firebird_2_0\bin\ :(

BTW, is exe run from you account? does it have correct permissions (this is for cleaning of conscience only)?
0
 

Author Comment

by:LeTay
ID: 21769415
All these DLL are present (I copied the msvcr71.dll manually)
The problem is NOT that the exe can't connect to a Firebird server because the error message is displayed when the .exe loads
The exe I wrote does NOT connect to the DB when it starts, this is done later on, on user action...
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21769792
During initialization tIBDatabase calls LoadIBLibrary from IBIntf, which creates this exception /it is DELPHI EXCEPTION, no static imports from GDS32 presents in  your exe.
Detailed analize shows, that this type of exception seldom appears (where i use t(f)ibdatabase in widows services), solution is force copy gds32.dll to global environment var %path% and (very seldom) reboot server (use on w2k3) {sorry 4 my english}
0
 
LVL 2

Expert Comment

by:Ustin19
ID: 21769820
try to use instreg.exe, i'm so interesting in result :)
And what happens, if you use FIB* components instead IB*? FIB* compatible with IB* and have a lot of features (poor that it is shareware AFAIK)
0
 

Author Comment

by:LeTay
ID: 22902643
I found what the problem is : the gds32.dll or some depending other dll gives a kind of "access denied" when trying to open it !
That gave the error
0
 

Author Closing Comment

by:LeTay
ID: 31465737
Also other DLL have to be deployed and it works fine
Thanks !
0

Featured Post

NEW Veeam Agent for Microsoft Windows

Backup and recover physical and cloud-based servers and workstations, as well as endpoint devices that belong to remote users. Avoid downtime and data loss quickly and easily for Windows-based physical or public cloud-based workloads!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
exchange 2010 Dag failed 3 67
Ranking Students in Ms Access based on given Criteria 5 61
T-SQL: need to reset a declared variable 4 33
Reoccurring Access Query 24 47
These days, all we hear about hacktivists took down so and so websites and retrieved thousands of user’s data. One of the techniques to get unauthorized access to database is by performing SQL injection. This article is quite lengthy which gives bas…
Recently, Microsoft released a best-practice guide for securing Active Directory. It's a whopping 300+ pages long. Those of us tasked with securing our company’s databases and systems would, ideally, have time to devote to learning the ins and outs…
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

752 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question