2009-08-11 4 views
0

Ich habe eine OLE DB-Verbindung in VB.NET, die ich versuche, eine Verbindung zu einer Oracle-Datenbank herzustellen. Allerdings bekomme ich folgende Fehler auf dem con.Open() Zeile:LoaderLock Fehler beim Herstellen einer Verbindung zu Oracle in .NET OLE DB-Verbindung

LoaderLock

verwaltet Ausführung Versuch innerhalb OS Loader Sperre erkannt wurde. Versuchen Sie nicht, verwalteten Code innerhalb einer DllMain- oder Image-Initialisierungsfunktion auszuführen, da dies dazu führen kann, dass die Anwendung hängen bleibt.

Hier ist mein Code:

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 

ich diesen gleichen Code verwenden, um verschiedene andere Arten von Datenbanken zu verbinden, einschließlich SQL Server, Excel und Access. Bei der Verbindung mit einem dieser verbindet es erfolgreich und ich bekomme diesen Fehler nicht.

Ich führe diesen Code innerhalb einer DLL aus. Wenn ich es innerhalb einer exe ausführe, funktioniert es gut. Allerdings muss ich dies innerhalb dieser DLL ausführen.

Antwort

1

Es ist eine Debugger-Assistent Warnung, wenn Sie also Ihren Code testen und es funktioniert, müssen Sie sich keine Sorgen machen.

Ich habe eine ähnliche Sache beim Aufrufen von DirectX gesehen, aber nach all den Vorschlägen im Netz, um den Fehler zu beseitigen, machte keinen Unterschied - der Code, den du anrufst, macht immer noch was freches, was es nicht tun sollte. Ich habe mich sehr bemüht, es zu eliminieren, und habe noch kein einziges Problem gesehen, das von ihm nach zwei Jahren verursacht wurde. Ich habe es in meiner "ignoriere diese irritierende Warnung" abgelegt.

Sie können die Warnung unterdrücken, indem Sie auf Debug -> Exceptions gehen. Klicken Sie auf die Schaltfläche Suchen, geben Sie LoaderLock ein, und deaktivieren Sie sie.

ABER dieser Rat gilt nur IF Sie gründlich Ihre Anwendung getestet und sind absolut sicher, dass die Anwendung nie wegen der LoaderLock ausfällt. Und dann liegt es in Ihrem Ermessen, ob Sie Ihr Programm mit diesem potenziellen Problem freigeben möchten.

Vielleicht kann jemand anderes eine bessere Lösung liefern - ich fühle mich immer ziemlich unwohl darüber, diese Art von Warnung zu ignorieren.

Verwandte Themen