Wie kann ich festlegen, das Oracle Home zu verwenden, wenn mit System.Daten.OracleClient

Arbeite ich an einer Excel-Add-in (VSTO) in .Ein NETZ, das verbindet sich zu einer Oracle 10g Datenbank.

Mir läuft auf Vista x64 und habe herausgefunden, dass ich brauche sowohl die x86-und x64-Oracle-clients auf meinem Rechner installiert, so dass sowohl in 32-bit-Prozesse (wie z.B. PL/SQL Developer) und 64-bit-Prozessen (wie ein Beispiel .NET-Konsolenanwendung kompiliert für "Any CPU") können Sie eine Verbindung zu Oracle.

Dass alles gut funktioniert. Mein problem ist, dass Excel eine 32-bit-app-hosting ein .NET-DLL, und nach ProcessMonitor der excel-Prozess laden "OraClient10g_home1" Oracle client "C:\oracle\product\10.2.0\client_1\BIN\oci.dll" (die zufällig die 64-bit-client) und das gibt mir eine BadImageFormatException als meine .NET-code versucht, es zu benutzen.

Was ich will, ist zu erzählen .NET zum laden der 32-bit - "OraClient10g_home2" Oracle-client (D. H. "C:\oracle\product\10.2.0\client_2\BIN\oci.dll"). Wie kann ich sagen .NET zu verwenden, client_2 statt client_1.

InformationsquelleAutor d4nt | 2009-09-22
Schreibe einen Kommentar