3

.NET 3.5Oracleデータベースに接続しようとしたときに、アクセスできないOracle client DLL oci.dll場合、またはoracle DLLバージョンが古すぎる場合にエラーが発生する小さなプログラムがあります。メッセージは次のとおりです。

System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.

ただし、例外によりプログラムがクラッシュします。update/install/fixそのため、プログラムの開始時にテストを行い、必要に応じて正常に終了し、ユーザーにのインストールが必要であることを通知するメッセージを表示したいと思いますOracle Client。スタックトレースでメソッドSystem.Data.OracleClient.OCI.DetermineClientVersion()を確認しましたが、公開されていないようです。何か案が?

4

1 に答える 1

1

残念ながら、そのルーチンは公開されていません。あなたはそれを回避する方法をハックするかもしれません。それ以外の場合、このページにはいくつかの選択肢が含まれています。

https://forums.oracle.com/forums/thread.jspa?threadID=1089440&tstart=15

私は特にTNSPING.EXEバイナリを読み取り、そこからClientVersionを決定するものが好きです;-)

于 2012-10-19T13:28:51.953 に答える