views:

533

answers:

2

I have had Delphi 2007 for a while. I tried the Delphi 2009 trial. Then I un-installed the trial. Now I get this in a dbExpress Delphi 2007 application:

---------------------------
Debugger Exception Notification
---------------------------
Project ABC.exe raised exception class TDBXError with message 
'Unable to load dbxora.dll (ErrorCode 126).  It may be missing
from the system path.'.
---------------------------
Break   Continue   Help   
---------------------------

I do not have dbxora.dll anywhere on my pc; I have dbxora30.dll, instead. Looking at another development machine (which has never had Delphi 2009 on it), I see dbxora30.dll too. FWIW, that file is here:

C:\Program Files\CodeGear\RAD Studio\5.0\bin\dbxora30.dll

And my path does include this location.

So it looks like Delphi 2009 introduced a new "dbxora.dll" which replaced "dbxora30.dll"... and when I un-installed Delphi 2009, it failed to point my system back to the original "dbxora30.dll". But now how do I use dbxora30 again?

Any suggestions?

A: 

I fixed the problem on my machine by editing this file:

C:\Users\Public\Documents\RAD Studio\dbExpress\dbxdrivers.ini

Under the section labeled [Oracle], I changed the "LibraryName" parameter from "dbxora.dll" to "dbxora30.dll".

I hope this helps someone else.

JosephStyons
A: 

I had pretty much the same problem, though I installed the full Delphi 2009 along with the existing Delphi 2007 and found that it broke my previous exe files. I uninstalled Delpi 2009 but had to fix it by editing the same file (though it was in a different directory on my machine: C:\Documents and Settings\All Users\Documents\RAD Studio\dbExpress\dbxdrivers.ini). However, there were more lines than just the one that is mentioned above. Luckily, I had a backup of the ini file from before the Delphi 2009 installation. Here are the two sections in case anybody needs help with this:

[Oracle] - FROM DELPHI 2007 DriverUnit=DBXDynalink DriverPackageLoader=TDBXDynalinkDriverLoader,DBXDynalinkDriver100.bpl DriverPackage=DBXCommonDriver110.bpl DriverAssemblyLoader=Borland.Data.TDBXDynalinkDriverLoader,Borland.Data.DbxDynalinkDriver,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b DriverAssembly=Borland.Data.DbxCommonDriver,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=a91a7c5705831a4f

GetDriverFunc=getSQLDriverORACLE LibraryName=dbxora30.dll VendorLib=oci.dll DataBase=Database Name User_Name=user Password=password BlobSize=-1 ErrorResourceFile= LocaleCode=0000 Oracle TransIsolation=ReadCommited RowsetSize=20 OS Authentication=False Multiple Transaction=False Trim Char=False Decimal Separator=. MetaDataPackageLoader=TDBXOracleMetaDataCommandFactory,DbxReadOnlyMetaData100.bpl MetaDataAssemblyLoader=Borland.Data.TDBXOracleMetaDataCommandFactory,Borland.Data.DbxReadOnlyMetaData,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b

[Oracle] - FROM DELPHI 2009 DriverUnit=DBXOracle DriverPackageLoader=TDBXDynalinkDriverLoader,DBXCommonDriver120.bpl DriverPackage=DBXCommonDriver110.bpl DriverAssemblyLoader=Borland.Data.TDBXDynalinkDriverLoader,Borland.Data.DbxCommonDriver,Version=12.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b DriverAssembly=Borland.Data.DbxCommonDriver,Version=11.0.5000.0,Culture=neutral,PublicKeyToken=a91a7c5705831a4f

GetDriverFunc=getSQLDriverORACLE LibraryName=dbxora.dll VendorLib=oci.dll DataBase=Database Name User_Name=user Password=password BlobSize=-1 ErrorResourceFile= LocaleCode=0000 Oracle TransIsolation=ReadCommited RowsetSize=20 OS Authentication=False Multiple Transaction=False Trim Char=False Decimal Separator=. MetaDataPackageLoader=TDBXOracleMetaDataCommandFactory,DbxOracleDriver120.bpl MetaDataAssemblyLoader=Borland.Data.TDBXOracleMetaDataCommandFactory,Borland.Data.DbxOracleDriver,Version=12.0.0.0,Culture=neutral,PublicKeyToken=91d62ebb5b0d1b1b

Reid Abel