LASS.IT

immagini    foto    parole    città    storie    web

Il provider 'Microsoft.Jet.OLEDB.4.0' non è registrato nel computer locale

TAG: Asp.net, IIS, AccessCat: Asp.Net




 AccessProblema riscontrato (e risolto) utilizzando
Windows 7 pro 64 bit
IIS 7.5
Visualstudio 2010 pro 10.0
Sito internet in Asp.net C# con database Access



Il mio sito si basa, ahimè, su un database access.
Qualche tempo fa ho cambiato il computer e, dopo un'attenta ricerca di mercato, ho comprato un Asus con windows 7 pro – 64 bit.



Ero molto soddisfatto quando l'ho portato a casa.
Ma quando ci ho messo su la copia locale del mio sito e ho provato ad eseguirlo mi è venuta fuori la temuta pagina gialla con un errore che diceva " Il provider 'Microsoft.Jet.OLEDB.4.0' non è registrato nel computer locale".
Ho perso un bel po' di tempo per capire come e cosa dovessi fare. Poi, miracolosamente, ha funzionato e tutto ha continuato ad andare bene fino a pochi giorni fa', quando ho formattato il computer e, dopo aver reinstallato tutto, ho avuto esattamente lo stesso problema.
Ho visto comparire l'errore giallo e ho pensato "ma porc… non mi ricordo assolutamente come l'avevo risolto". Anche questa volta ci ho perso un po' di tempo ma, visto che non ho speranza di ricordarmi il procedimento se dovessi riformattare, ho deciso di scrivere questo post in modo che possa essere utile a chi ha avuto lo stesso problema ed anche a me quando dovrò riaffrontarlo.
Si, perché credo proprio che non ci sia speranza che il signor Microsoft intanto lo risolva lui.
Ah già, ma qual è il problema?
Semplicemente (riporto da sito Microsoft) "non esiste una versione a 64 bit del provider di database. OleDb", per cui Asp.net non riesce ad interfacciarsi con Access.
Cercando in giro, quello che ho trovato è che bisogna forzare l'applicazione ad essere compilata a 32 bit da visual studio.
Io questa cosa non sono riuscito a fargliela capire (a visual studio).
Quello che, nel mio caso, ha funzionato, è stato settare IIS.


I passaggi da fare sono questi:
- aprire IIS e cliccare sulla voce del proprio pc (la freccia a sin)
- cliccare su "visualizza pool di applicazioni" (la freccia a dx)


 Il provider 'Microsoft.Jet.OLEDB.4.0' non è registrato nel computer locale


- cliccare su Classic .NET AppPool e poi su Impostazioni avanzate


 Il provider 'Microsoft.Jet.OLEDB.4.0' non è registrato nel computer locale


E poi su Attiva applicazioni a 32 bit



 Il provider 'Microsoft.Jet.OLEDB.4.0' non è registrato nel computer locale


Ripetere lo stesso procedimento con il DefaultAppPool.
Facendo così sono riuscito a risolvere il problema e tutto ha ricominciato a funzionare come prima.
Se avete altre idee o soluzioni o anche domande scrivetemi da qui (nel caso, anche per dirmi che questo post è stato utile).





Posted 07/10/2012
Domenico
Dopo ore di tempo perso, il tuo prezioso consiglio ha risolto il problema.
Grazie 1000
19/08/2013

Maurizio
Grazie , dopo vari tentativi con il tuo post ho risolto!
10/01/2015

Marco
Grazie post utilissimo, mi ha fatto risparmiare sicuramente del tempo...
26/11/2015

Fabio
Grazie, veramente utile! Avrei perso un sacco di tempo inutilmente senza questo post.
14/04/2016

Riccardo
Grande! Grazie, utilissimo, ho risolto anche io!!!!
05/03/2018

Diego
Grazie mille.. ho risolto alla velocità della luce
18/06/2018

Raffaele
Grazie. Ottimo suggerimento. Risolto subito
19/04/2019




Link sponsorizzati