64bit Access&Oracle

lunedì 25 ottobre 2010 - 02.08
Tag Elenco Tags  C#  |  VB.NET  |  Windows 7  |  Windows Vista  |  Oracle 11g  |  Oracle 10g  |  Oracle 9g  |  Internet explorer 8.0  |  Internet Explorer 7.0  |  Internet Explorer 6.0  |  Safari  |  Firefox  |  Javascript  |  VBScript

Anonimo Profilo | Senior Member

Questo post riguarda l'integrazione tra Oracle, Access su una piattaforma a 64bit!
In tutti i post del mondo spiegano come utilizzare Access su una piattaforma a 64bit compilando il nostro Assembly in X86 in modo che il Framework al momento del RUN forza l'eseguzione in WOW64 dove il supporto a Jet di Access è ancora supportato. Evito le polemiche sul perchè Microsoft non abbia fornito un Jet a 64bit ma va be', ci saranno motivi....CREDOOO..... O.o

Il problema si ha quando il vostro exe/webapplication vuole accedere simultaneamente ad Oracle utilizzando ODAC Oracle.DataAccess.Client, i problemi più frequenti li troverete con BadImageFormat (che capita molto spesso se mettete il client a 64bit e nella vostra soluzione lasciate nel riferimento copialocalmente=true) oppure vi capita che non trovi la versione dell'assembly (che capita molto spesso se lasciate versionespecifica=true)


Come ho risolto:
Ho installato entrambi le versioni dell'Oracle Client in due ORACLE_HOME diverse ad esempio:
E:\oracle\product\10.2.0\client_1 VERSIONE NATIVA A 64BIT
E:\oracle\product\10.2.0\client_x86 VERSIONE A 32BIT IN EMULAZIONE WOW

Ho installato entambi le versioni ODAC.NET facendo attenzione a selezionare l'ORACLE_HOME corretta per piattaforma
Alla fine finalmente nella C:\WINDOWS\assembly mi trovo tutti i miei bellissimi Assembly =D

Se non utilizzo Access allora compilo con AnyCPU e nella soluzione il riferimento ad Oracle.DataAccess ha copialocalmente = FALSE e versionespecifica = FALSE in modo che anche se sviluppo su una piattaforma a 32bit quando viene eseguita a 64 usa la versione corretta (2.102.3.2)
Se voglio utilizzare Access allora sono costretta ad andare in emulazione (X86) quindi con versione specifica = TRUE lo forzo alla versione a 32bit (2.102.2.20) con la quale è stato compilato.


BEH..ORA C'E' DA VEDERE COME SI COMPORTERA' ADESSO....HUMMM.....VI FARO' SAPERE
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5