Friday 30 March 2012

Installare Visual Basic 6.0 su Windows 7 (a 64 bit) - Q&A

Q: Con alcuni componenti l'IDE di VB6 da errore di licenza!

A: Non è una domanda: comunque è un problema indipendente da Seven: cercare vbctrls.reg nel cd di installazione è applicarlo.

Q: Se compilo il mio programma su Seven, funziona. Su XP, 2000,2003 etc, non funziona, da 'Type Mismatch' o altri errori strani. Se prendo il sorgente e lo ricompilo su XP allora funziona da tutte le parti!! Che cavolo è? Si installa ma non compila bene!

A: Non esattamente. Su Seven 64 bit Service Pack 1 M$ ha cambiato alcuni ID delle type library ADO. I programmi compilati con type library presenti su altri SO funzionano dappertutto. Quelli con le nuove, solo su Seven 64 bit SP1. Non sono cambiati i CLSID - ovviamente - per cui i sorgenti ricompilano da una parte e dall'altra senza modifiche. Con l'OLE Viewer di VS 6.0 su XP aprendo una type library che esponga oggetti ADO compilata su Seven il tipo non viene riconosciuto ('Can't get..' nella definizione dell'interfaccia). E' un bug gustosissimo presente dall'uscita del SP1: solo da poco MS ha rilasciato un fix decente http://support.microsoft.com/kb/2640696 - che non si installa da solo con Windows update, va scaricato e installato. Leggere anche: http://connect.microsoft.com/VisualStudio/feedback/details/646313/ado-programs-no-longer-work-on-customer-computers-after-recompiled-on-a-windows-7-sp1-machine

No comments:

Post a Comment