ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
2466
2466
EMPFEHLEN
-
Hallo,
ich habe eine Anwendung geschrieben. Diese Funktioniert auf Rechnern mit Entwicklung wunderprächtig. (XP, Framework 1.1)
Nun hab ich einen Win2000 Rechner folgendes getan:
Framework drauf (1.1) und OracleClient drauf. Mit einem kleinem C# Testproggi kann erreich ich auch die DB.
Mein eigentliches Programm läd dynamsich Assembly nach und macht nun folgendes:
LOG:
<code>
2005-11-24 17:13:47,000 [121960] ERROR Extension_1 [] - Es kann keine Verbindung zur zentralen Datenbank hergestellt werden.
Exception: de.ongeo.lora.appCore.exceptions.DBConnector.NetDBConnectorLoginException
Message: Eine Ausnahme vom Typ de.ongeo.lora.appCore.exceptions.DBConnector.NetDBConnectorLoginException wurde ausgelöst.
Source: dataCore
at de.ongeo.lora.dataCore.internal.ServiceConnector..ctor()
at de.ongeo.lora.dataCore.internal.ServiceConnector.getServiceConnector()
at de.ongeo.lora.dataCore.internal.InitDataCore.Init()
at OnGeo.Extension.MailListenerExtension.StartLokalConfig() in C:LORAChristian_viewongeo_loraServerExtensionMailListenerExtension.vb:line 266
Nested Exception
Exception: de.ongeo.lora.appCore.exceptions.DBConnector.ConnectionFailedException
Message:
Source: dataDBConnector
at de.ongeo.lora.dataDBConnector.internal.OracleConnector.connect() in C:LORAChristian_viewongeo_loradataDBConnectorinternal.vb:line 218
at de.ongeo.lora.dataDBConnector.internal.BasisConnector.login(String connectionstring) in C:LORAChristian_viewongeo_loradataDBConnectorinternal.vb:line 54
at de.ongeo.lora.dataCore.internal.ServiceConnector..ctor()
Nested Exception
Exception: System.Exception
Message: System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.
Source: System.Data.OracleClient
at System.Data.OracleClient.DBObjectPool.GetObject(Object owningObject, Boolean& isInTransaction)
at System.Data.OracleClient.OracleConnectionPoolManager.GetPooledConnection(String encryptedConnectionString, OracleConnectionString options, OracleConnection owningObject, Boolean& isInTransaction)
at System.Data.OracleClient.OracleConnection.OpenInternal(OracleConnectionString parsedConnectionString, Object transact)
at System.Data.OracleClient.OracleConnection.Open()
at de.ongeo.lora.dataDBConnector.internal.OracleConnector.open() in C:LORAChristian_viewongeo_loradataDBConnectorinternal.vb:line 705
at de.ongeo.lora.dataDBConnector.internal.OracleConnector.connect() in C:LORAChristian_viewongeo_loradataDBConnectorinternal.vb:line 214
2005-11-24 17:13:47,015 [121960] INFO Extension_1 [] - --- START der Extension Base ---
<code>
Meine Vermutung ist, dass er die System.Data.OracleClient.dll nicht sauber läd. Denn im Ausgabeverzeichniss ist sie nicht (trotz lokaler Kopie eingeschaltet) und mein anderes Proggi, was ähnlich funktioniert funktioniert. Wenn ich die Datei einfach in das Verzeichniss lege, klappt es auch nicht ...
Irgendwer nen Schimmer, wie man noch vorgehen könnte?
Chris
-
Moin XChris!
Was passiert denn in den angegebenen Zeilen?
Allein die Exception Messages bringen uns kaum weiter.
Kann es sein das deine Oracle Version älter ist als es das Framework erwartet?Exception: System.Exception Message: System.Data.OracleClient requires Oracle client software version 8.1.7 or greater.
In der Exception steht, daß sie nicht älter als 8.1.7 sein darf.
MfG, cosmoMfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
Also:
Ich habe einen Dienst geschrieben. Dieser läd dynamisch beliebige Assemblys nach - die einem besonderem Interface entsprechen. Diese Assembly werden zyklisch immer wieder ausgeführt.
Eins dieser Assemblys braucht ne Datenbank ... Aufbau wie folgt - Datenbankschicht:
Interface für den Zugriff
Abstrakte Klasse (IDBConnection usw ....)
Konkrete Klasse (Oracle Client ...)
Es passiert also folgendes:
1. Start des Server
2. Durchforsten eines Verzeichnissen nach DLL.
3. Laden der DLL - wenn diese dem Interface entsprechen, dann ausführen
..
3.1. Laden der Datenschicht
Ein benutzt die selbe DB Schicht - ist aber ne normale Applikation. Es hat nur einen Knopf und nen Feld für nen Connection String und eine Ampel. Ist die Ampel GRÜN - besteht eine Connection. UND DAS GEHT ...
Ich vermute, dass durch das dynamische Laden der "Erweiterung" die DLL: System.Data.OracleClient nicht mitgeladen wurde ... warum auch immer.
Chris
-
Willst mir jetzt damit sagen das der Server schon eine Verbindung zu der DB aufgebaut hat?UND DAS GEHT ...

Wofür brachst dann die DLL? Übergib der DLL in dem Fall doch die bestehende Connection.
Oder übergib der DLL den ConnectionString und sie connected dann für den Server.
Desweiteren hab ich noch nichts mit Oracle gemacht.
Kann sich ja mal jemand melden der sich damit eher auskennt.
MfG, cosmoMfG,
Christian
Wer sein Problem definiert, hat es schon halb gelöst!
Bitte markiert eure Themen als erledigt. Sonst macht so ein Forum als Nachschlagewerk keinen Sinn.
The Code Project! - C# Programming | C# / VB.NET Pendants
Regeln + Netiquette
Liebe FIAEs, verlasst euch nicht auf das was in der Berufsschule "vermittelt" wird
und vor allem nicht auf das, was euch die IHK dazu erzählt!
Die haben so viel Ahnung von dem Gewerk, wie der Bundestag vom Haushalt...
-
Also, 2 Punkte:
1. Sind die Oracle Client-Tools auch tatsächlich auf der entsprechenden Maschine installiert? Ohne die würde nämlich auch nicht funktionieren.
2. Zeig mal wie du deine Assemblies ladest .. btw. könntest dir ja ein Log-File mitschreiben, dann würdest sehr einfach rausfinden, ob es beim Laden der Assemblies Probleme gibt oder nicht. Log-Files sind sowieso immer eine gute Idee ...
-
Nein
Zitat von cosmochaosmaker

Ein kleines alleinstehendes Programm, dass die SELBE DLL für die Datenverbindung nutzt funktioniert. Es hat nichts mit meinem eigentlichen Programm zu tun - beweist jedoch, dass die DLL geht. Der Unterschied ist, dass die Oracle DLL HIER über eine andere DLL direkt gelinkt wird (Projektverweis).
Bei meinem ECHTEM Programm, wird eine DLL dynamsich geladen und ruft wiederum den oracle Mist auf.
Es geht nicht um Oralce. Es geht eigentlich darum, dass ich ein Assymbly dynamsich lade, welches weitere DLL benötigt. Ich hab die als lokale Kopie mitgegeben und auch als Porgammverweis ... alles mögliche hab ich schon ausprobiert.Wofür brachst dann die DLL? Übergib der DLL in dem Fall doch die bestehende Connection.
Oder übergib der DLL den ConnectionString und sie connected dann für den Server.
Chris
Ähnliche Themen
-
Problem beim Laden einer Tilemap aus einer Textdatei
Von TilemapFrage im Forum C/C++Antworten: 3Letzter Beitrag: 15.06.10, 18:44 -
laden von Images von einer URL
Von bootscreen im Forum .NET Grafik und SoundAntworten: 5Letzter Beitrag: 16.08.07, 22:22 -
Laden einer Form
Von Toppa80 im Forum Visual Basic 6.0Antworten: 2Letzter Beitrag: 08.07.07, 13:01 -
Laden einer Datei an einer bestimmten Stelle
Von pontifex im Forum PHPAntworten: 1Letzter Beitrag: 17.12.05, 12:51 -
[MX] Laden einer XML-Datei
Von fungo im Forum Flash PlattformAntworten: 12Letzter Beitrag: 20.05.03, 17:37





Zitieren
Login





