Ado con Windows 7 SP1

Ho avuto la (s)fortuna di dover riprendere un vecchio programma VB6 per una piccola modifica chiesta dal cliente.
Apro Visual Basic6, lancio l'applicaione con CTRL e F5 ma con sorpresa noto che non compila.

La riga incrimanata è questa:
Private Sub datPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)




Provo allora sugli altri miei computer ma lo stesso risultato.

Su internet ci sono parecchie cose a riguardo, ma poichè è successo a me oggi, voglio spiegarvi come ho risolto il problema.

Partiamo...
Subito ho pensato che la colpa sarà stata di qualche aggiornamento che ho installato sui computer. Dal Gennaio 2011, data dell'ultima modifica, a oggi ho installato Entity Framework 4.1, Visual Studio Lightswitch e Windows 7 SP1.
Per curiosità provo su un mio computer con ancora XP e anche là non compila.
Faccio qualche verifica su internet e vedo una pagina nel supporto Microsoft che ADO, quindi il Data Objects Library 2.8 non è più compatibile con Windows 7 SP1.
Eseguo quindi la procedura sulla pagina http://support.microsoft.com/kb/2517589.
Scarico il Msado60_Backcompat_i386.tlb, lo copio sotto Programmi, File comuni, System, Ado, registro il file tlb con %windir%\Microsoft.NET\Framework\v4.0.30319\regtlibv12 "C:\Program Files\Common Files\System\ado\msado60_Backcompat_i386.tlb"

A questo punto nei riferimenti del progetto metto "Microsoft Activex Data Objects 6.0 BakCompat Library". Confermo, compilo ed ecco che funziona il tutto. Ho provato la procedura anche su XP e ora funziona anche là, poichè è installato l'aggiornamento KB983246.

Print | posted @ domenica 15 gennaio 2012 16:44

Comments on this entry:

No comments posted yet.

Your comment:

Title:
Name:
Email:
Website:
 
Italic Underline Blockquote Hyperlink
 
 
Please add 2 and 6 and type the answer here: