Link to home
Start Free TrialLog in
Avatar of JohnTait
JohnTait

asked on

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

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
ASKER CERTIFIED SOLUTION
Avatar of senad
senad
Flag of Slovenia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of JohnTait
JohnTait

ASKER

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