6

現在、ローカルホスト経由で .aspx ページにアクセスしようとすると、ASP.NET エラーが発生します。これはエラーです:

OCIEnvCreate はリターン コード -1 で失敗しましたが、エラー メッセージ テキストは利用できませんでした。

説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。

例外の詳細: System.Exception: OCIEnvCreate はリターン コード -1 で失敗しましたが、エラー メッセージ テキストは利用できませんでした。

スタックトレース:

[Exception: OCIEnvCreate failed with return code -1 but error message text was not available.]
   System.Data.OracleClient.OciHandle..ctor(OciHandle parentHandle, HTYPE handleType, MODE ocimode, HANDLEFLAG handleflags) +363
   System.Data.OracleClient.OciEnvironmentHandle..ctor(MODE environmentMode, Boolean unicode) +23
   System.Data.OracleClient.OracleInternalConnection.OpenOnLocalTransaction(String userName, String password, String serverName, Boolean integratedSecurity, Boolean unicode, Boolean omitOracleConnectionName) +122
   System.Data.OracleClient.OracleInternalConnection..ctor(OracleConnectionString connectionOptions) +135
   System.Data.OracleClient.OracleConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningObject) +36
   System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +28
   System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +424
   System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +68
   System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +519
   System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +82
   System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +104
   System.Data.OracleClient.OracleConnection.Open() +37
   Wilson.ORMapper.Internals.Connection..ctor(String connectString, CustomProvider customProvider) +287

[ORMapperException: ObjectSpace: Connection String is Invalid - OCIEnvCreate failed with return code -1 but error message text was not available.]
   Wilson.ORMapper.Internals.Connection..ctor(String connectString, CustomProvider customProvider) +357
   Wilson.ORMapper.Internals.Context.Init(XmlDocument xmlMappings, String connectString, CustomProvider customProvider, Int32 sessionMinutes, Int32 cleanupMinutes) +92
   Wilson.ORMapper.Internals.Context..ctor(Stream mappingStream, String connectString, CustomProvider customProvider, Int32 sessionMinutes, Int32 cleanupMinutes) +171
   Wilson.ORMapper.ObjectSpace..ctor(Stream mappingStream, String connectString, Provider providerType, Int32 sessionMinutes, Int32 cleanupMinutes) +66
   zedi.DataManager.GetDefaultInstance() in C:\projects\FINE Application Interface\Production\On-site Backlog\Source\Code\DataAccess\ORClasses\Data\DataManager.cs:155
   zedi.DataManager.get_ObjectSpaceGlobal() in C:\projects\FINE Application Interface\Production\On-site Backlog\Source\Code\DataAccess\ORClasses\Data\DataManager.cs:105
   zedi.DataManager.get_ObjectSpace() in C:\projects\FINE Application Interface\Production\On-site Backlog\Source\Code\DataAccess\ORClasses\Data\DataManager.cs:129
   zedi.DataObjects.CompanyBase.RetrieveQuery(ObjectQuery query) in C:\projects\FINE Application Interface\Production\On-site Backlog\Source\Code\DataAccess\ORClasses\DataObjects\Base\CompanyBase.cs:279
   zedi.DataObjects.CompanyBase.RetrieveAll(String sortClause) in C:\projects\FINE Application Interface\Production\On-site Backlog\Source\Code\DataAccess\ORClasses\DataObjects\Base\CompanyBase.cs:78
   maint_inetpub.siteTemplates.updateDeviceTemplate.Page_Load(Object sender, EventArgs e) in c:\projects\FINE Application Interface\Production\On-site Backlog\Source\Code\Websites\maint-inetpub\siteTemplates\updateDeviceTemplate.aspx.cs:47
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +33
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1436

無効な接続文字列がありますが、テストしたところ動作します。現在、Oracle 10g Express をインストールしており、それ以前は Oracle 8i Client を使用していました。10g Express をインストールする前は動作していました。

4

5 に答える 5

2

最近、これにも遭遇しました。私たちの場合、ORACLE_HOME 環境変数を復元するとうまくいきました (OMS10G のインストールが不完全で、環境変数が null として登録され、システムが一貫性のない状態のままになっていました)。

于 2009-10-06T15:11:15.967 に答える
2

私は oracle 10g で同じ問題に遭遇しました。私が読んだことから、このエラーは、.Net oracle ドライバーが oracle クライアントを見つけられないことを意味しているようです。

PATH および ORACLE_HOME 環境変数の確認など、これを修正するためのさまざまな提案があります。Oracle クライアントがデフォルトの場所 (C:\oracle) にない場合は、そこに再インストールします。または、Microsoft oracle ドライバー (System.Data.OracleClient) の代わりに oracle の Oracle Data Provider for .NET (ODP.NET) を使用します。

ただし、上記のいずれも私の問題を解決していないため、他に提案があれば大歓迎です!

于 2009-05-13T15:14:31.137 に答える
0

System.Data.OracleClient.dll を削除するだけです \Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5

他のエラーが発生した場合に備えて、最初にバックアップを作成してください

これは私から動作します。

System.Data.OracleClient.dllまたは次のフォルダから 置き換えますWindows\Microsoft.NET\assembly\GAC_32\System.Data.OracleClient\v4.0_4.0.0.0__b77a5c561934e089

于 2016-03-29T17:08:52.267 に答える
0

私はこれをWindows 7マシンで経験しました。ORACLE_HOME 環境変数を追加し、「windows xp sp3」互換モード (ファイル/プロパティ/互換性) で Oracle クライアントを使用する実行可能ファイルを実行すると、問題が解決しました。

于 2010-07-02T09:34:33.213 に答える
0

この問題はやや古いものですが、私は 5 セントを投じます。私がインターネット上で読んだことから、これは、呼び出し元 (Windows にログオンしているユーザー) が Oracle バイナリを読み取り/実行する権限を持っていないときに完全に構​​成された環境でも発生する可能性があります。

于 2011-08-09T06:40:13.673 に答える