?
Solved

Codegear RAD 2009 - Interbase 2007 - GDS32.LL cannot be loaded

Posted on 2009-07-03
2
Medium Priority
?
1,077 Views
Last Modified: 2013-12-09
I have multiple Delphi versions, plus RAD Studio 2009 just installed, and have Interbase 2007 Developer. I want to test IB2009 (in RAD intallation package) against older Delphi versions and DBs from earlier Interbase server versions.

In Delphi 2009 I placed a TSQLConnection on a new form. I set properties and parameters as follows:
Driver: Interbase
Login Prompt: False
Params: User_Name, Password, Database path (in format localhost:c:\dirname\dbname.ib)

When I tried to set Connected to True, I received a message indicating GDS32.DLL could not be loaded, with a note to suggest that it may not be on the system path. Screenshot attached.

GDS32.DLL is in the Windows\System32 directory as would be expected.

I tried connections to various DBs from Delphi versions 2, 3, 4 and 6, and all are working correctly.

As mentioned, I am reluctant to install IB2009 at this time, as explained above. Therefore, I need to determine how I can get D2009 to connect to IB 2007
Contents of Detail field on error dialog:
 
[0F70D0B1]{DbxCommonDriver120.bpl} Dbxcommon.TDBXContext.Error + $51
[0F725082]{DbxCommonDriver120.bpl} Dbxdynalink.TDBXDynalinkDriverCommonLoader.LoadDriverLibraryAndMethodTable + $FE
[0F724CFD]{DbxCommonDriver120.bpl} Dbxdynalink.TDBXDynalinkDriver.LoadDriver + $35
[0F722E88]{DbxCommonDriver120.bpl} Dbxdynalinknative.TDBXDynalinkDriverNative.CreateConnection + $C
[0F70D421]{DbxCommonDriver120.bpl} Dbxcommon.TDBXDelegateDriver.CreateConnection + $5
[0F711F0B]{DbxCommonDriver120.bpl} Dbxcommon.TDBXConnectionBuilder.CreateConnection + $A3
[0F7043D0]{DbxCommonDriver120.bpl} Dbxcommon.TDBXConnectionFactory.GetConnection + $E8
[0F7042E1]{DbxCommonDriver120.bpl} Dbxcommon.TDBXConnectionFactory.GetConnection + $5
[50AB8AB7]{dbexpress120.bpl} SqlExpr.TSQLConnection.DoConnect (Line 2534, "..\..\..\..\..\src\pas\dbx\vcl\SqlExpr.pas" + 53) + $5
[50483591]{dbrtl120.bpl} DB.TCustomConnection.SetConnected (Line 3064, "DB.pas" + 8) + $4
[5003FC4A]{rtl120.bpl  } TypInfo.SetOrdProp (Line 1502, "TypInfo.pas" + 27) + $0
[20ABACF2]{designide120.bpl} DesignEditors.TPropertyEditor.SetOrdValue (Line 838, "DesignEditors.pas" + 2) + $E
[20ABBDFB]{designide120.bpl} DesignEditors.TEnumProperty.SetValue (Line 1398, "DesignEditors.pas" + 5) + $4
[20ABA961]{designide120.bpl} DesignEditors.TPropertyEditor.Edit (Line 668, "DesignEditors.pas" + 11) + $14
[207ABC62]{coreide120.bpl} PropInsp.TPropertyInspector.PropListEditDblClick (Line 883, "PropInsp.pas" + 20) + $5
[20BA7451]{vclide120.bpl} IDEInspListBox.TInspListBox.DoEditDblClick (Line 976, "IDEInspListBox.pas" + 2) + $A
[20BA8C92]{vclide120.bpl} IDEInspListBox.TInspListBox.EditDblClick (Line 1546, "IDEInspListBox.pas" + 0) + $2
[501C5BE1]{vcl120.bpl  } Controls.TControl.DblClick (Line 6763, "Controls.pas" + 1) + $14
[501C5D44]{vcl120.bpl  } Controls.TControl.WMLButtonDblClk (Line 6806, "Controls.pas" + 4) + $C
[501C565A]{vcl120.bpl  } Controls.TControl.WndProc (Line 6642, "Controls.pas" + 91) + $6
[501C9CE7]{vcl120.bpl  } Controls.TWinControl.WndProc (Line 9336, "Controls.pas" + 136) + $6
[501D1CCA]{vcl120.bpl  } Controls.TDockTree.WndProc (Line 14476, "Controls.pas" + 74) + $5
[50048010]{rtl120.bpl  } Classes.TThreadList.UnlockList (Line 3751, "Classes.pas" + 0) + $4
[5012C914]{vcl120.bpl  } Graphics.FreeMemoryContexts (Line 6829, "Graphics.pas" + 12) + $5
[501C9400]{vcl120.bpl  } Controls.TWinControl.MainWndProc (Line 9065, "Controls.pas" + 3) + $6
[501C9640]{vcl120.bpl  } Controls.TWinControl.IsControlMouseMsg (Line 9129, "Controls.pas" + 9) + $25
[501C9CE7]{vcl120.bpl  } Controls.TWinControl.WndProc (Line 9336, "Controls.pas" + 136) + $6
[20BA65F3]{vclide120.bpl} IDEInspListBox.TPropInspEdit.WndProc (Line 439, "IDEInspListBox.pas" + 7) + $4
[501C9400]{vcl120.bpl  } Controls.TWinControl.MainWndProc (Line 9065, "Controls.pas" + 3) + $6
[500591DC]{rtl120.bpl  } Classes.StdWndProc (Line 12703, "Classes.pas" + 8) + $0
[501EFC55]{vcl120.bpl  } Forms.TApplication.StopHintTimer (Line 10390, "Forms.pas" + 3) + $6
[501EEABD]{vcl120.bpl  } Forms.TApplication.ProcessMessage (Line 9660, "Forms.pas" + 30) + $1
[501EEB02]{vcl120.bpl  } Forms.TApplication.HandleMessage (Line 9690, "Forms.pas" + 1) + $4
[501EEE2D]{vcl120.bpl  } Forms.TApplication.Run (Line 9827, "Forms.pas" + 26) + $3
[004259E6]{bds.exe     } bds.bds (Line 198, "" + 8) + $FFFB

Open in new window

GDS32-error.gif
0
Comment
Question by:JohnTait
[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
2 Comments
 
LVL 22

Accepted Solution

by:
senad earned 800 total points
ID: 24775129
try reinstalling Interbase 2007 Developer or puting a copy of gds32.dll in C:\windows...
I think your Interbase installation got screwed up.RAD Studio 2009  and Interbase 2007 Developer somehow are not happy :-)
0
 

Author Closing Comment

by:JohnTait
ID: 31599730
Senad,

That did the trick, after a bit of work. The uninstall of IB 2007 Dev was not clean, so first reinstall made no difference. Second time, after uninstall, I manually removed Registry entries, and renamed original IB directory. Then everything fine. RAD 2009 and Delphi 2, 3, 4, 6 all accessing DBs now.

A hint for others who may be reinstalling IB. Save a copy of the IBCONSOLE.XML file in IB BIN sub-directory, and then overwrite the newly installed one. This will protect all defined aliases in IBConsole.

Many thanks

John
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

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

When it comes to protecting Oracle Database servers and systems, there are a ton of myths out there. Here are the most common.
Recently I was talking with Tim Sharp, one of my colleagues from our Technical Account Manager team about MongoDB’s scalability. While doing some quick training with some of the Percona team, Tim brought something to my attention...
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…
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…
Suggested Courses

762 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