Tra ieri e oggi in ufficio mi sono imbattuto in uno scomodo problema che mi ha tenuto arenato diverse ore nel cercare possibili soluzioni su internet.
Compilavo da Windows 7 SP1 un progetto con riferimenti a ADODB; funzionava tutto alla perfezione ma quando lanciavo il progetto da un PC con Windows XP mi veniva restituito un errore (Errore 13 - Tipo non corrispondente).
Soltanto grazie ad un mio collega sono riuscito a risolvere il dilemma.
Ambiente di partenza:
Dopo aver passato la giornata a cercare possibili fix o workaround abbiamo scoperto che basta eseguire alcuni semplici passaggi:
A questo punto possiamo compilare tranquillamente i nostri progetti senza più preoccupazioni!
Spero di esservi stato utile, se avete segnalazioni o commenti potete inserirli qui sotto, saranno ben accetti!
Compilavo da Windows 7 SP1 un progetto con riferimenti a ADODB; funzionava tutto alla perfezione ma quando lanciavo il progetto da un PC con Windows XP mi veniva restituito un errore (Errore 13 - Tipo non corrispondente).
Soltanto grazie ad un mio collega sono riuscito a risolvere il dilemma.
Ambiente di partenza:
- Sistema operativo:
Windows 7 - (32 e 64 bit) - Ambiente di sviluppo:
Visual Basic 6 SP6 (VB6 SP6) - Componente "incriminato":
Microsoft ActiveX Data Objects 2.8 Library (ADODB, msado27.tlb, msado28.tlb e msado15.dll) - Errore riscontrato:
Errore 13 - Tipo non corrispondente
Dopo aver passato la giornata a cercare possibili fix o workaround abbiamo scoperto che basta eseguire alcuni semplici passaggi:
- Posizionarsi sulla cartella
%ProgramFiles%\Common Files\System\
Nota: per versioni di windows a 64 bit la cartella sarà
%ProgramFiles(x86)%\Common Files\System\ - Impostare i permessi alla cartella "ado\" in modo da esserne il proprietario e avere permessi di lettura/scrittura
- Aprire la cartella "ado\"
- Rinominare il file msado27.tlb in msado27_new.tlb
- Rinominare il file msado28.tlb in msado28_new.tlb
- Cercare il file "msado27.tlb" presente su un pc con Windows XP SP3 (o scaricarlo da questo link) e copiarlo nella cartella "ado\" di Windows 7 SP1
- Duplicare il file "msado27.tlb" presente in Windows 7 SP1 chiamandolo "msado28.tlb"
- Riavviare il sistema
A questo punto possiamo compilare tranquillamente i nostri progetti senza più preoccupazioni!
Spero di esservi stato utile, se avete segnalazioni o commenti potete inserirli qui sotto, saranno ben accetti!