2009-08-11 29 views
0

Oracleデータベースへの接続に使用しようとしているVB.NETのOLE DB接続があります。しかし、私はcon.Open()の行に次のエラーを取得する:.NET OLE DB接続でOracleに接続するときのLoaderLockエラー

LoaderLockは、OSローダーロックの内部管理の実行をしようと

を検出しました。 DllMainまたはイメージ初期化関数内でマネージコードを実行しようとしないでください。アプリケーションがハングアップする可能性があるためです。私は、SQL Server、Excel、およびアクセスを含む、データベースの様々な他のタイプ、に接続するために、この同じコードを使用

Dim con As New OleDb.OleDbConnection 

ConfigConnection() 

Try 
    con.ConnectionString = ConnectionString 
Catch ex As Exception 
    MsgBox("Invalid connection string) 
    Return 
End Try 

Try 
    con.Open() 
    MsgBox("Connection attempt successfull!") 
Catch ex As Exception 
    MsgBox("Unable to connect to data source.") 
End Try 

は、ここに私のコードです。それらのいずれかに接続すると正常に接続され、このエラーは発生しません。

私はこのコードをdll内で実行しています。 exe内で実行するとうまく動作します。しかし、私はこのDLL内でこれを実行する必要があります。

答えて

1

これはデバッガのアシスタントの警告ですので、コードをテストして正常に動作することがわかった場合、心配する必要はありません。

私はDirectXを呼び出すときにも同様のことを見ましたが、エラーを排除するためにネット上のすべての提案に従えば、違いはありません - あなたが呼んでいるコードは、それを排除しようと多くの努力を払ったが、2年後に1つの問題が発生していないことを見て、私は「この刺激的な警告を無視する」ビンに入れた。

[デバッグ] - > [例外]を選択すると、警告を抑制できます。 [検索]ボタンをクリックし、LoaderLockと入力してから解除します。

しかしあなたが徹底的にあなたのアプリケーションをテストしているためLoaderLockのアプリケーションに障害が発生したことがないことを絶対的に確信しているしている場合は、このアドバイスはを適用します。そして、あなたの裁量で、この潜在的な問題であなたのプログラムをリリースしてもいいかどうかについてです。

おそらく、他の誰かがより良い解決策を提供できるようになるでしょう - 私はいつもこのタイプの警告を無視することについてかなり不安を感じます。

関連する問題