2011-11-16 43 views
7

Ho un problema con la mia applicazione. Quando viene eseguito, l'errore viene visualizzatoIl provider 'Microsoft.Jet.OLEDB.4.0' non è registrato sul computer locale

Il provider 'Microsoft.Jet.OLEDB.4.0' non è registrato sulla macchina locale .

Ho provato a cambiare Platform in CPU X86 ma non è stato possibile modificarlo, l'unica opzione disponibile è Any CPU.

Si prega di avvisare come eliminare questo errore.

Grazie

+0

Dai un'occhiata a questo thread - http://social.technet.microsoft.it/Forum/it/w7itproappcompat/thread/14041b74-6ca6-49be-af90-d8ff3f962724 – adatapost

+2

non dovrebbe essere la tua domanda "perché non posso cambiare la CPU di destinazione" perché questa è la cosa sconcertante – hawbsl

+0

"Ho provato a cambiare piattaforma per CPU X86 ma non può essere modificato " Se qualcun altro ha riscontrato questo problema, provare prima questo: se si utilizza Visual Studio, la piattaforma può essere modificata in Proprietà progetto> Crea> Destinazione piattaforma. Se si controlla su Solutions Platform, può mostrare solo CPU. –

risposta

5

si utilizza il Jet.OLEDB.4.0 conducente, che dà quell'errore quando viene eseguito su sistemi a 64 bit, è meglio installare il nuovo driver di Microsoft Access Database Engine 2010 Redistributable

http://www.microsoft.com/download/en/details.aspx?id=13255

inoltre sarà necessario modificare la stringa di connessione da "Provider = Microsoft.Jet.OLEDB.4.0; “a‘Provider = Microsoft.ACE.OLEDB.12.0;’

riferimento dal mio blog: 64 bit version of ‘Microsoft.Jet.OLEDB.4.0’ Office 2007/2010 Jet drivers

Spero che questo aiuti.

3

Aprire Gestione IIS, selezionare Application Pools, selezionare il pool di applicazioni in uso, fare clic su Advanced Settings nel menu di destra. In Generale, impostare "Enable 32-Bit Applications" to "True".

Ora opzione x86 sarà visibile e costruire la vostra applicazione in questo modo

0

Il provider Microsoft.Jet.OLEDB.4.0 non è registrato sulla macchina locale Sfondo

RNT clienti è progettato per funzionare su PC a 32 o 64 bit con Windows XP, Windows Vista, Windows 7 o Windows 8 Pro, ma su Windows XP a 64 bit (e probabilmente su altri sistemi operativi) è possibile che alcune DLL di Microsoft OLEDB non siano state registrato.

Soluzione No. 1

La soluzione è registrare manualmente tali DLL.

andare a Start-> Esegui e digitare cmd questo inizia il Prompt dei comandi (disponibili anche da Start-> Programmi-> Accessori-> Prompt dei comandi)

tipo cd \ e premere invio

Il prompt dovrebbe ora mostrare C:\>

Hai bisogno di andare in una cartella speciale che sarebbe qualcosa di simile

  • c: \ windows \ system32
  • c: \ winnt \ system32
  • c: \ windows \ sysWOW64

Provate a digitare ognuno di questi. Se dice "Il sistema non riesce a trovare il percorso specificato, prova il prossimo" ad es.

  • cd c: \ windows \ sysWOW64
  • cd c: \ windows \ system32
  • cd c: \ winnt \ system32

Quando uno di quelli non causa un errore, smetti, hai trovato la cartella corretta.

È necessario registrare l'OLE DB 4.0 DLL digitando questi comandi e premendo il ritorno dopo ogni

  • regsvr32 Msjetoledb40.dll
  • regsvr32 Msjet40.dll
  • regsvr32 Mswstr10.dll
  • regsvr32 Msjter40.dll
  • regsvr32 Msjint40.dll

* Soluzione n 2 *

Per risolvere il problema aprire il progetto in Visual Studio, allora:

  1. Dalla soluzione explorer pulsante destro del mouse il progetto quindi scegliere Proprietà
  2. Clicca Build scheda
  3. Cambiamento di destinazione Piattaforma da: Qualsiasi CPU x86
  4. Ri-costruire la vostra soluzione
0

Cause: Hosting dell'applicazione Asp.net su computer a 64 bit. Ma il nostro sito fa riferimento a DLL di terze parti che è compilata a 32 bit. step by step solution Una volta ho provato tutta la soluzione ma ero bloccato, perché stavo usando il driver ODBC insted di OLEDB.

Problemi correlati