Frage

Vor einigen Jahren habe ich einen Windows-Dienst-App (VB.NET Framework 1.1) entwickelt, die die System.Data.OracleClient den Zugriff auf eine Oracle-Datenbank wurde mit.
Da dieser Fahrer mir viele Probleme gegeben hat, wollte ich das Orakel Dataprovider (Oracle.DataAccess.dll) verweisen, die viel besser funktioniert.
Auf meinem PC funktioniert alles einwandfrei.
Das Problem ist, wenn ich versuche, meine app auf dem Server (Windows 2000) zu veröffentlichen.
Ich kann den neuen Oracle Data Provider auf dem Server installieren und es ist eine alte Installation von Oracle 9.0 (meine app Referenzen Oracle 9.2).
Ich habe kopiert (keine Installation), um das gesamte Verzeichnis (C: \ oracle \ ora92 \ ist) von meinem PC auf den Server, aber ich weiß nicht, wie die Oracle-Datenprovider zu verweisen. Ich weiß, dass nicht eine „saubere“ Art und Weise, die Dinge zu tun, aber ich habe nicht die Möglichkeit, neue Software zu installieren.
Ich habe gesehen, dass, wenn ich meine app (und alle Dateien) in der C kopieren: \ oracle \ ora92 Ordner \ ist alles funktioniert
. Ich möchte dieses Verzeichnis als Sondieren Verzeichnis meiner Bewerbung angeben. Ich habe versucht, verschiedene Lösungen im Internet gefunden, aber keiner von ihnen scheinen zu arbeiten.

Ich möchte einen Ordner zur Laufzeit setzen oder in meiner config-Datei so, dass meine App können die Baugruppen verwenden dort (und alle Abhängigkeiten).

Ich kann meine App für das Framework 2.0 aktualisieren.

Dank

Alberto

War es hilfreich?

Lösung

es anders tun um - setzt die Oracle-Baugruppen in root Ihre Anwendung. Oder noch besser - setzt die Baugruppen in den GAC auf dem Server. das Dienstprogramm für das (gacutil) verwendet sollte gut auf dem Server ausgeführt werden.

Vielleicht könnte Ihnen helfen: C #: Benutzerdefinierte Montage Verzeichnis

, wenn alles andere fehlschlägt, könnte man auf die AssemblyResolve Ereignis des AppDomain abonnieren:

Assembly Resolve

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top