Page 1 of 1

Cannot find OCI DLL : oci.dll

Posted: Wed 09 Sep 2009 14:04
by pralthom
Hi,

I have installed unidacd12pro.exe on my computer and I have the oracle client.

When I use UniConnection, and try to connect to my Oracle database, I have an error message : Cannot find OCI DLL : oci.dll

In my Windows PATH I have : C:\oracle\ora92\bin
This directory contains oci.dll

I use Delphi 2009 with XP Pro.

Can anyone help me ?
Thank's

Posted: Thu 10 Sep 2009 10:41
by Plash
Maybe you don't have access rights for the C:\oracle\ora92\bin directory.

Posted: Thu 10 Sep 2009 10:47
by pralthom
I have access rights for this directory, and I installed oracle client with the same windows account than I use.

Posted: Tue 15 Sep 2009 09:39
by Plash
Please check the system registry. There should be the HKEY_LOCAL_MACHINE\Software\Oracle key.
This key should contain the HOME0 key. HOME0 should contain ORACLE_HOME and ORACLE_HOME_NAME values.

Posted: Tue 15 Sep 2009 14:24
by pralthom
I checked, and I havec ORACLE_HOME and ORACLE_HOME_NAME values.

ORACLE_HOME_NAME : OraHome92
ORACLE_HOME : C:\oracle\ora92

Posted: Thu 17 Sep 2009 08:20
by Plash
Maybe the installation of Oracle client is corrupted. Please try to make a test project that loads OCI.dll using the LoadLibrary function. Check if you can load OCI.dll in the test project.

If the DLL cannot be loaded, maybe reinstalling the Oracle client will resolve the problem.

Posted: Fri 18 Sep 2009 09:02
by pralthom
I tried to load oci.dll with LoadLibrary function and that works. --> The installation of the oracle client is ok.

In my first post, I forgot to give you the complete error message.
I give it to you now, maybe that that can help you?

[0A434C1E]{oraprovider120.bpl} Oracalluni.VersionStrToWord + $B36
[0A43541A]{oraprovider120.bpl} Oracalluni.DetectOCI + $796
[0A43575F]{oraprovider120.bpl} Oracalluni.LoadOCI + $17
[0A439204]{oraprovider120.bpl} Oracalluni.InitOCI + $34
[0A462508]{oraprovider120.bpl} Oraclassesuni.OCIInit + $0
[0A4652E8]{oraprovider120.bpl} Oraclassesuni.TOCIConnection.Connect + $134
[06E7C757]{dac120.bpl } Craccess.TCRConnection.SetServer + $B
[06E997ED]{dac120.bpl } Dbaccess.TCustomDAConnection.DoConnect + $C1
[06FDC56B]{unidac120.bpl} Uni.TUniConnection.DoConnect + $2F
[06E99B03]{dac120.bpl } Dbaccess.TCustomDAConnection.PerformConnect + $37
[06E9BB5A]{dac120.bpl } Dbaccess.TCustomDAConnection.SetConnected + $2A2
[06E99AC0]{dac120.bpl } Dbaccess.TCustomDAConnection.Connect + $4
[06E999E3]{dac120.bpl } Dbaccess.TCustomDAConnection.InternalConnect + $6B
[06E9DFB9]{dac120.bpl } Dbaccess.TCustomDADataSet.BeginConnection + $55
[06FDE432]{unidac120.bpl} Uni.TCustomUniDataSet.BeginConnection + $6
[06E9E7EB]{dac120.bpl } Dbaccess.TCustomDADataSet.OpenCursor + $7F
[06FDE5D7]{unidac120.bpl} Uni.TCustomUniDataSet.OpenCursor + $27
[50494245]{dbrtl120.bpl} DB.TDataSet.SetActive (Line 10592, "DB.pas" + 12) + $7
[06E9E759]{dac120.bpl } Dbaccess.TCustomDADataSet.SetActive + $3D
[50493DCB]{dbrtl120.bpl} DB.TDataSet.Loaded (Line 10435, "DB.pas" + 3) + $13
[06E9DEE2]{dac120.bpl } Dbaccess.TCustomDADataSet.Loaded + $22
[50046CC4]{rtl120.bpl } Classes.NotifyGlobalLoading (Line 3025, "Classes.pas" + 3) + $B
[20AD6BE3]{designide120.bpl} ComponentDesigner.TComponentRoot.CreateFromStream (Line 2182, "ComponentDesigner.pas" + 10) + $0
[20AD6962]{designide120.bpl} ComponentDesigner.TComponentRoot.Create (Line 2136, "ComponentDesigner.pas" + 32) + $6
[21BEB7E1]{delphivclide120.bpl} VCLFormDesigner.TVCLFormDesigner.CreateRoot (Line 1324, "VCLFormDesigner.pas" + 3) + $27
[214EADA3]{delphicoreide120.bpl} DelphiModule.TPascalCodeMgrModHandler.SetupSourceModules (Line 547, "DelphiModule.pas" + 67) + $8A
[214EA726]{delphicoreide120.bpl} DelphiModule.TPascalCodeMgrModHandler.Create (Line 438, "DelphiModule.pas" + 4) + $7
[214F0C21]{delphicoreide120.bpl} DelphiModule.TPascalGauntletHandler.AttachHandler (Line 2549, "DelphiModule.pas" + 6) + $16
[20746CB9]{coreide120.bpl} DocModul.TModuleHandlerGauntlet.RunGauntlet (Line 3091, "DocModul.pas" + 4) + $1E
[2074247A]{coreide120.bpl} DocModul.TDocModule.AfterConstruction (Line 921, "DocModul.pas" + 4) + $7
[2074AAFF]{coreide120.bpl} SourceModule.TSourceModule.AfterConstruction (Line 757, "SourceModule.pas" + 4) + $3
[5000721D]{rtl120.bpl } System.@AfterConstruction (Line 10639, "System.pas" + 2) + $5
[20749940]{coreide120.bpl} SourceModule.TSourceModule.Create (Line 349, "SourceModule.pas" + 6) + $25
[214B6353]{delphicoreide120.bpl} CommonPasReg.TPascalFileOpenHandler.FileOpen (Line 559, "CommonPasReg.pas" + 3) + $D
[20741EAC]{coreide120.bpl} DocModul.TFilterList.OpenFile (Line 788, "DocModul.pas" + 36) + $14
[20745BAF]{coreide120.bpl} DocModul.CallDefaultOpenProc (Line 2522, "DocModul.pas" + 3) + $15
[2067982F]{coreide120.bpl} ProjectModule.OpenFile (Line 2535, "ProjectModule.pas" + 22) + $9
[2148E4F1]{delphicoreide120.bpl} BaseDelphiProject.TDelphiProjectModuleHandler.OpenModule (Line 2072, "BaseDelphiProject.pas" + 31) + $D
[501C565A]{vcl120.bpl } Controls.TControl.WndProc (Line 6642, "Controls.pas" + 91) + $6
[5001A4A5]{rtl120.bpl } SysUtils.AnsiLowerCase (Line 4984, "SysUtils.pas" + 4) + $9
[5001A4BA]{rtl120.bpl } SysUtils.AnsiLowerCase (Line 4985, "SysUtils.pas" + 5) + $10
[50003FD0]{rtl120.bpl } System.@FreeMem (Line 3457, "System.pas" + 2) + $0
[5000885D]{rtl120.bpl } System.@LStrArrayClr (Line 13960, "System.pas" + 16) + $0
[2075694A]{coreide120.bpl} UIUtils.UNCSameText (Line 1977, "UIUtils.pas" + 8) + $22
[21491AB3]{delphicoreide120.bpl} BaseDelphiProject.TUsesList.FindUsesEntry (Line 3281, "BaseDelphiProject.pas" + 29) + $1D
[214DC71E]{delphicoreide120.bpl} PasMgr.TPascalProjectCodeManager.FindUsesEntry (Line 8420, "PasMgr.pas" + 4) + $4
[5004B431]{rtl120.bpl } Classes.TStringList.Get (Line 5503, "Classes.pas" + 2) + $8
[2063A034]{coreide120.bpl} Updaters.GetMainFormNameImpl (Line 949, "Updaters.pas" + 7) + $A
[2063A04F]{coreide120.bpl} Updaters.GetMainFormNameImpl (Line 953, "Updaters.pas" + 11) + $10
[214DFC36]{delphicoreide120.bpl} PasMgr.TPascalProjectUpdater.GetMainFormName (Line 9551, "PasMgr.pas" + 2) + $11
[2148F719]{delphicoreide120.bpl} BaseDelphiProject.TDelphiProjectModuleHandler.ShowMainForm (Line 2440, "BaseDelphiProject.pas" + 10) + $E
[2148A5AD]{delphicoreide120.bpl} BaseDelphiProject.TBaseDelphiProject.DisplayProject (Line 752, "BaseDelphiProject.pas" + 5) + $5
[206798B9]{coreide120.bpl} ProjectModule.TCustomCodeIProject.DisplayProject (Line 2549, "ProjectModule.pas" + 0) + $5
[20688F3C]{coreide120.bpl} ProjectFileUtils.ShowProject (Line 464, "ProjectFileUtils.pas" + 22) + $22
[20689D89]{coreide120.bpl} ProjectFileUtils.MSBuildLoadProjectFile (Line 689, "ProjectFileUtils.pas" + 44) + $21
[21491BFA]{delphicoreide120.bpl} BaseDelphiProject.TDelphiProjectFileModuleHandler.FileOpen (Line 3304, "BaseDelphiProject.pas" + 2) + $B
[20746D32]{coreide120.bpl} DocModul.TFileOpenHandler.FileOpen (Line 3107, "DocModul.pas" + 1) + $A
[20741EAC]{coreide120.bpl} DocModul.TFilterList.OpenFile (Line 788, "DocModul.pas" + 36) + $14
[2074702C]{coreide120.bpl} DocModul.ProjectOpenDialog (Line 3177, "DocModul.pas" + 43) + $13
[00418147]{bds.exe } bds.bds (Line 198, "" + 8) + $275C
[500584EB]{rtl120.bpl } Classes.TBasicAction.Execute (Line 12201, "Classes.pas" + 3) + $7
[501DCF79]{vcl120.bpl } ActnList.TContainedAction.Execute (Line 448, "ActnList.pas" + 8) + $2C
[501DDD5C]{vcl120.bpl } ActnList.TCustomAction.Execute (Line 1094, "ActnList.pas" + 7) + $8
[500583AF]{rtl120.bpl } Classes.TBasicActionLink.Execute (Line 12130, "Classes.pas" + 2) + $7
[210E9635]{vclactnband120.bpl} ActnMenus.TCustomActionMenuBar.ExecAction (Line 1064, "ActnMenus.pas" + 6) + $D
[210EAAEB]{vclactnband120.bpl} ActnMenus.TCustomActionMenuBar.TrackMenu (Line 1746, "ActnMenus.pas" + 15) + $15
[210EE044]{vclactnband120.bpl} ActnMenus.TCustomActionMainMenuBar.TrackMenu (Line 3472, "ActnMenus.pas" + 3) + $3
[210E91FD]{vclactnband120.bpl} ActnMenus.TCustomActionMenuBar.CMItemClicked (Line 943, "ActnMenus.pas" + 3) + $4
[501C565A]{vcl120.bpl } Controls.TControl.WndProc (Line 6642, "Controls.pas" + 91) + $6
[501C5280]{vcl120.bpl } Controls.TControl.Perform (Line 6420, "Controls.pas" + 10) + $8
[501C94FA]{vcl120.bpl } Controls.GetControlAtPos (Line 9088, "Controls.pas" + 4) + $76
[501C9677]{vcl120.bpl } Controls.TWinControl.IsControlMouseMsg (Line 9135, "Controls.pas" + 15) + $15
[501C9BD9]{vcl120.bpl } Controls.TWinControl.WndProc (Line 9297, "Controls.pas" + 97) + $1D
[501C9CE7]{vcl120.bpl } Controls.TWinControl.WndProc (Line 9336, "Controls.pas" + 136) + $6
[210EABDA]{vclactnband120.bpl} ActnMenus.TCustomActionMenuBar.WndProc (Line 1781, "ActnMenus.pas" + 25) + $4
[501C9400]{vcl120.bpl } Controls.TWinControl.MainWndProc (Line 9065, "Controls.pas" + 3) + $6
[500591DC]{rtl120.bpl } Classes.StdWndProc (Line 12703, "Classes.pas" + 8) + $0
[501C03E2]{vcl120.bpl } Controls.FindControl (Line 2999, "Controls.pas" + 6) + $9
[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


I also reinstalled the oracle client and Unidac and I have the same error message.

Thank's for your help.