2009-01-09 103 views
0

我已经安装了一个演示来测试datasnap 2009,并且我遇到了dbexpress的问题。德尔福2009年,与Oracle的DbExpress:无法加载oci.dll

dbexpress错误消息(在设计时或运行时相同): “无法加载oci.dll库(错误代码127)。系统路径中可能缺少OCI.dll库。

我正在使用Oracle 8.0.5。 oci.dll(c:\ orant \ BIN)的路径位于系统前面的系统路径中。我也安装了Delphi 2005,完全相同的配置工作正常。我已经移动了dbexpress delphi 2005相关文件,我重新启动了很多次,试图在c:\ windows \ system或c:\ windows \ system32 \中复制oci.dll,每次都出现相同的错误。

我用完了解决方案。也许这是一个与我安装了D2005的事实有关的问题......?

有人可以帮我吗?

感谢

编辑: 这里是事件日志,在建期间,IDE,我们可以看到,它发现和负载OCI.DLL,所以错误(无法加载OCI.DLL)可能不是很好的一个:

Début du Thread : ID du thread : 5588. Processus Server.exe (5548) 

Début du processus : C:\Documents and Settings\frplante\Mes documents\Développement\Projets\Démo DataSnap2009\Server\Server.exe. Adresse de base : $00400000. Processus Server.exe (5548) 

Chargement du module : Server.exe. Contient des infos de débogage. Adresse de base : $00400000. Processus Server.exe (5548) 

Chargement du module : ntdll.dll. Pas d'informations de débogage. Adresse de base : $7C910000. Processus Server.exe (5548) 

Chargement du module : KERNEL32.dll. Pas d'informations de débogage. Adresse de base : $7C800000. Processus Server.exe (5548) 

Chargement du module : OLEAUT32.dll. Pas d'informations de débogage. Adresse de base : $770E0000. Processus Server.exe (5548) 

Chargement du module : ADVAPI32.dll. Pas d'informations de débogage. Adresse de base : $77DA0000. Processus Server.exe (5548) 

Chargement du module : RPCRT4.dll. Pas d'informations de débogage. Adresse de base : $77E50000. Processus Server.exe (5548) 

Chargement du module : Secur32.dll. Pas d'informations de débogage. Adresse de base : $77FC0000. Processus Server.exe (5548) 

Chargement du module : GDI32.dll. Pas d'informations de débogage. Adresse de base : $77EF0000. Processus Server.exe (5548) 

Chargement du module : USER32.dll. Pas d'informations de débogage. Adresse de base : $7E390000. Processus Server.exe (5548) 

Chargement du module : msvcrt.dll. Pas d'informations de débogage. Adresse de base : $77BE0000. Processus Server.exe (5548) 

Chargement du module : ole32.dll. Pas d'informations de débogage. Adresse de base : $774A0000. Processus Server.exe (5548) 

Chargement du module : MSIMG32.dll. Pas d'informations de débogage. Adresse de base : $76310000. Processus Server.exe (5548) 

Chargement du module : VERSION.dll. Pas d'informations de débogage. Adresse de base : $77BD0000. Processus Server.exe (5548) 

Chargement du module : COMCTL32.dll. Pas d'informations de débogage. Adresse de base : $77390000. Processus Server.exe (5548) 

Chargement du module : SHLWAPI.dll. Pas d'informations de débogage. Adresse de base : $77F40000. Processus Server.exe (5548) 

Chargement du module : wxvault.dll. Pas d'informations de débogage. Adresse de base : $10000000. Processus Server.exe (5548) 

Chargement du module : PSAPI.DLL. Pas d'informations de débogage. Adresse de base : $76BA0000. Processus Server.exe (5548) 

Chargement du module : MPR.dll. Pas d'informations de débogage. Adresse de base : $71A60000. Processus Server.exe (5548) 

Chargement du module : detoured.dll. Pas d'informations de débogage. Adresse de base : $00370000. Processus Server.exe (5548) 

Chargement du module : SHELL32.dll. Pas d'informations de débogage. Adresse de base : $7C9D0000. Processus Server.exe (5548) 

Chargement du module : IMM32.dll. Pas d'informations de débogage. Adresse de base : $76320000. Processus Server.exe (5548) 

Chargement du module : UxTheme.dll. Pas d'informations de débogage. Adresse de base : $5B090000. Processus Server.exe (5548) 

Chargement du module : **dbxora.dll**. Pas d'informations de débogage. Adresse de base : $00FC0000. Processus Server.exe (5548) 

Chargement du module : **OCI.dll**. Pas d'informations de débogage. Adresse de base : $003F0000. Processus Server.exe (5548) 

Chargement du module : ORA805.dll. Pas d'informations de débogage. Adresse de base : $01430000. Processus Server.exe (5548) 

Chargement du module : CORE40.dll. Pas d'informations de débogage. Adresse de base : $015C0000. Processus Server.exe (5548) 

Chargement du module : NLSRTL33.dll. Pas d'informations de débogage. Adresse de base : $01620000. Processus Server.exe (5548) 

Chargement du module : WINMM.dll. Pas d'informations de débogage. Adresse de base : $76AE0000. Processus Server.exe (5548) 

Chargement du module : NL80.dll. Pas d'informations de débogage. Adresse de base : $01660000. Processus Server.exe (5548) 

Chargement du module : WSOCK32.dll. Pas d'informations de débogage. Adresse de base : $71A10000. Processus Server.exe (5548) 

Chargement du module : WS2_32.dll. Pas d'informations de débogage. Adresse de base : $719F0000. Processus Server.exe (5548) 

Chargement du module : WS2HELP.dll. Pas d'informations de débogage. Adresse de base : $719E0000. Processus Server.exe (5548) 

Chargement du module : OTRACE80.dll. Pas d'informations de débogage. Adresse de base : $01680000. Processus Server.exe (5548) 

Chargement du module : NS80.dll. Pas d'informations de débogage. Adresse de base : $016B0000. Processus Server.exe (5548) 

Chargement du module : nasns80.dll. Pas d'informations de débogage. Adresse de base : $016F0000. Processus Server.exe (5548) 

Chargement du module : nz80.dll. Pas d'informations de débogage. Adresse de base : $01720000. Processus Server.exe (5548) 

Chargement du module : NNFG80.dll. Pas d'informations de débogage. Adresse de base : $01770000. Processus Server.exe (5548) 

Chargement du module : NNCI80.dll. Pas d'informations de débogage. Adresse de base : $01780000. Processus Server.exe (5548) 

Chargement du module : NNG80.dll. Pas d'informations de débogage. Adresse de base : $01790000. Processus Server.exe (5548) 

Chargement du module : NMP80.dll. Pas d'informations de débogage. Adresse de base : $017B0000. Processus Server.exe (5548) 

Chargement du module : NPL80.dll. Pas d'informations de débogage. Adresse de base : $017C0000. Processus Server.exe (5548) 

Chargement du module : NR80.dll. Pas d'informations de débogage. Adresse de base : $017D0000. Processus Server.exe (5548) 

Chargement du module : NT80.dll. Pas d'informations de débogage. Adresse de base : $017F0000. Processus Server.exe (5548) 

Chargement du module : NCR80.dll. Pas d'informations de débogage. Adresse de base : $01800000. Processus Server.exe (5548) 

Chargement du module : NMS80.dll. Pas d'informations de débogage. Adresse de base : $01840000. Processus Server.exe (5548) 

Chargement du module : NNFD80.dll. Pas d'informations de débogage. Adresse de base : $01850000. Processus Server.exe (5548) 

Chargement du module : NNFN80.dll. Pas d'informations de débogage. Adresse de base : $01860000. Processus Server.exe (5548) 

Chargement du module : NI80.dll. Pas d'informations de débogage. Adresse de base : $01870000. Processus Server.exe (5548) 

Chargement du module : PLS805.dll. Pas d'informations de débogage. Adresse de base : $01880000. Processus Server.exe (5548) 

Chargement du module : NDWSI80.DLL. Pas d'informations de débogage. Adresse de base : $01A80000. Processus Server.exe (5548) 

Exception déclenchée à $7C812AEB. Classe d'exception TDBXError avec message '**Cannot load oci.dll library** (error code 127). The oci.dll library may be missing from the system path'. Processus Server.exe (5548) 

回答

0

尝试复制的DLL到程序的根文件夹这样的

+0

感谢您的建议,但这不起作用。 – Fred 2009-01-09 11:11:52

+0

对不起,我想不出其他可能的解决方案,并且没有2009年的datasnap测试。 – 2009-01-09 11:19:29

1

问题如果切换甲骨文公寓通常会发生,但你没有提到多个安装。

您可以使用SqlPlus连接到Oracle吗? This page也建议检查路径中oci.dll的多个副本(特别是windows \ system32)

+0

我已经安装了Oracle 10g Express Edition,但现在它已被卸载。我如何检查我的Oracle Home是否搞砸了?我要检查注册表,以确保卸载程序没有离开坏东西 – Fred 2009-01-09 13:48:11

+0

顺便说一句,我没有问题连接SQL + – Fred 2009-01-09 14:10:18

1

Windows错误代码127是一个未找到的过程,这可能意味着存在旧版本的DLL或丢失功能或其他东西,

+0

嗨,是的,我想知道如果这是我的oci.dll的旧版本,但它的工作原理与D2005 – Fred 2009-01-09 13:49:09

1

我有Oracle 10g XE客户端的问题。我的错是,我安装了多个客户端。卸载后问题消失,并安装正确的。

0

我有一个类似的DBXpress驱动程序的问题,我无法重新安装100%我修复它,我的问题是从一台Windows PC移动到另一个(安装)。

这里是我能记得试图

把数据库的DLL在同一目录与从dbExpress的3或4的dll一起应用(因为我是有这个问题的dbExpress的dll文件(不是我的应用)找不到数据库的DLL)

确保我有正确的C++运行时库安装,因为我相信DBX驱动程序需要这个。

更新的Windows到SP3(我想你可以跳过这一步,因为你的不改变计算机)如果您在Windows Vista上运行此

0

,你检查你的程序有访问权限的OCI.DLL?

如果答案中没有一个有效,那么您应该联系CodeGear以确认Oracle 8.0.5是否仍受支持。即使是在驱动程序中的Oracle,几年来也不支持访问8.0.5。Metalink上有一篇文章描述了特定客户端版本可以访问的服务器版本。