C#のOracleデータベース接続は、指定された:OCIEnvCreateリターンコードが-1であるが、エラー・メッセージ・テキストが使用できない、失敗しました

その理由は、おそらくOracleOraDb11g_home1TNSListenerサービスが起動しなかった理由であります

、1ステップOracleOraDb11g_home1TNSListenerサービスを停止して再起動し、それが動作するかどうか試してください。

このサービスを開始すると表示される「ローカルコンピュータ上のOracleOraDb11g_home1TNSListenerサービスの開始後に停止します。他のサービスやプログラムによって、一部のサービスではない、使用中は自動的に停止します。」  これは、Oracle ORACLE_HOME、オープンな環境変数、見つかったシステム変数のための問題でなければなりませんORACLE_HOME、次のパスの値にORACLEのインストールディレクトリ:

E:\アプリの\管理者\製品11.2.0 \ dbhome_1 \

再起動OracleOraDb11g_home1TNSListenerサービス発見が正常に起動することができます。

ステップ2、もう一度新しいC#のソフトウェアエラーの出現を開始するには:ORA-12541:TNS:リスナーがありませんが

解決策:[スタート] - > [すべてのプログラム] - > [オラクルOraDb11g_home1--構成および移行ツール--Net、以下に示すように再構成コンフィギュレーション・アシスタント、。

ここに参考ます。https://www.cnblogs.com/josephcnblog/articles/6785722.html

 

:再起動ステップ3は、C#のソフトウェアがエラーとして浮上している見つかったORA-12514:TNS:リスナーは現在のサービス要求サービスの記述を認識しません。 

理由:いいえ登録済みリスナー 

ソリューション:E:アプリの\管理者\ \製品は以下のように変更listener.oraの11.2.0 \ dbhome_1 \ネットワーク\のADMIN \: 

ネットワーク構成ファイルのlistener.ora#:E:\アプリの\管理者\製品11.2.0 \ dbhome_1の\ネットワーク\ \管理者\ listener.oraの
Oracle設定ツールによって生成#。

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = E:\アプリの\管理者\製品11.2.0 \ dbhome_1)\
(PROGRAM = EXTPROC)
E:\アプリの\管理者(ENVS =「EXTPROC_DLLS = ONLY \製品\ 11.2.0 \ dbhome_1ビンの\ oraclr11.dll ")\

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS =(PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS =(PROTOCOL = TCP)(HOST =ローカルホスト)(PORT = 1521)) )

ADR_BASE_LISTENER = E:\アプリの\管理者

再びサービスを再起動するために、C#のソフトウェアは、Oracleデータベースに接続できることが発見された再起動します!

ステップ4注:クライアントを作成するためにC#を使用している場合ORACLEデータベースにアクセスすることができますが、C#のWebサービスで書かれてますが、Oracleデータベース、およびエラーにアクセスできません:OCIEnvCreateが戻りコードで失敗しました-1が、エラーメッセージのテキストは使用できません。

解決策:アプリケーション\、右このファイル、プロパティ、Web共有、公表され、ここで見つかったWebサービス、および共有を追加します。など、ORACLEのインストールディレクトリを検索します。(ここに参照のためのWindows Server 2003オペレーティングシステムであり、他のウィンドウシステムは、それのようになります。)

コンピュータを再起動し、コールWebサービスは、すでにOracleデータベースへのアクセス権を持っていました。この問題の原因が解消されます。

おすすめ

転載: www.cnblogs.com/follow-discoverer/p/11288099.html