| Dino Rebuscini |
Problema uso Microsoft Jet 4.0 OLE DB Provider da Windows 7 Home Premium a 64 bit
Problema uso Microsoft Jet 4.0 OLE DB Provider da Windows 7 Home Premium a 64 bit
Buongiorno a tutti. Mi capita, come detto nel titolo, di dover mantenere un'applicazione convertita negli anni in C# .NET con VS2008 ma sviluppata originariamente in VB6 che obbligatoriamente usa Access come da connection string sotto riportata (ho sostituito con "[...]" le porzioni relative ad eventuali dati sensibili del cliente). <connectionStrings> <add name="[...].Properties.Settings.ConnectionString" connectionString="Data Source=DBLinee;User ID=[...];Password=[...];" providerName="System.Data.OracleClient" /> <add name="[...].Properties.Settings.[...]ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\database_loc\[...].mdb;Persist Security Info=True" providerName="System.Data.OleDb" /> </connectionStrings> Attivando l'applicazione ho il seguente errore: Il provider "Microsoft.Jet.OLEDB.4.0" non è registrato nel computer locale. Nulla di male. Scopro che basta registrare le seguenti dll: 1) msjetoledb40.dll 2) msjet40.dll 3) mswstr10.dll 4) msjter40.dll 5) msjint40.dll Il problema è che la registrazione delle prime 2 va a buon fine mentre per ognuna delle altre 3 ottengo la segnalazione: Il modulo "<nomeDll>" è stato caricato, ma il punto di ingresso DllRegisterServer non è stato trovato. Accertarsi che "<nomeDll>" sia un file OCX o DLL valido, quindi riprovare. Preciso che ho provato dapprima a registrare le dll trovate nel mio sistema nelle directories che esibivano, nel nome, la dicitura "x86" per evitare problemi di accesso a db precedenti e che poi ho richiesto le dll in uso su un PC dotato di Windows XP in cui l'applicazione funziona, ottenendo lo stesso risultato. Cosa posso fare? Un grazie anticipato a chiunque mi toglierà d'impaccio. Dino Rebuscini |
| Alberto Dallagiacoma |
Re: Problema uso Microsoft Jet 4.0 OLE DB Provider da Windows 7 Home Premium a 64 bit
Ciao Dino,
Prova compilare il tuo progetto impostando esplicitamente "x86" come Target Platform, la quale, di default è "Any CPU". HTH, -- Alberto Dallagiacoma My Blog: http://blogs.ugidotnet.org/Alby |