0

datasnap 2009をテストするためのデモをセットアップしましたが、dbexpressに問題があります。

dbexpressエラーメッセージ(設計時または実行時に同じ):「oci.dllライブラリを読み込めません(エラーコード127)。OCI.dllライブラリがシステムパスにない可能性があります。」

Oracle8.0.5を使用しています。oci.dll(c:\ orant \ BIN)へのパスは、システムパスの行の前にあります。Delphi 2005もインストールしましたが、まったく同じ構成で問題なく動作します。dbexpress delphi 2005関連ファイルを移動し、何度も再起動し、同じエラーが発生するたびにoci.dllをc:\ windows \ systemまたはc:\ windows \system32\にコピーしようとしました。

ソリューションが不足しています。多分それは私が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)
4

6 に答える 6

1

このような問題は通常、Oracle ホームを切り替えると発生しますが、複数のインストールについては言及されていません。

SqlPlus を使用して Oracle に接続できますか? このページでは、パス (特に windows\system32) にある oci.dll の複数のコピーを確認することもお勧めします。

于 2009-01-09T11:38:24.537 に答える
1

Windows エラー コード 127 は、プロシージャが見つからないことを示しています。これは、DLL のバージョンが古いか、機能が不足していることを意味します。

于 2009-01-09T12:32:41.503 に答える
1

Oracle 10g XE クライアントに問題があります。私のせいは、複数のクライアントをインストールしたことです。それらをアンインストールした後、問題はなくなり、正しいものをインストールしました。

于 2009-01-09T14:13:39.553 に答える
0

DBXpress ドライバーにも同様の問題があり、それを修正するために行ったことを 100% 思い出せません。私の問題は、ある Windows PC から別の Windows PC に (インストールのために) 移動することでした。

これが私が試したことを覚えていることです

データベースdllをアプリケーションと同じディレクトリに配置し、dbexpressの3つまたは4つのdllと一緒に配置します(私が抱えていた問題はdbexpress dll(私のアプリケーションではありません)がデータベースdllを見つけることができなかったためです)

DBX ドライバーにはこれが必要だと思われるため、正しい C++ ランタイム ライブラリがインストールされていることを確認しました。

Windowsをsp3に更新しました(コンピューターを変更していないため、この手順をスキップできると思います)

于 2009-01-09T15:18:43.230 に答える
0

これを Windows Vista で実行している場合、プログラムに oci.dll へのアクセス権があることを確認しましたか?

いずれの回答もうまくいかない場合は、CodeGear に連絡して、Oracle 8.0.5 がまだサポートされているかどうかを確認してください。Oracle のドライバーでさえ、ここ数年は 8.0.5 へのアクセスをサポートしていません。特定のクライアント バージョンからアクセスできるサーバーのバージョンを説明する Metalink に関する記事がありました。

于 2009-01-10T20:43:09.843 に答える
0

dll をプログラムのルート フォルダにコピーしてみてください

于 2009-01-09T10:30:32.053 に答える