Installare Visual Basic 6 su sistemi Windows 7 a 64 bit

Installare Visual Basic 6 su sistemi Windows 7 a 64 bit

Una panoramica sul caro, vecchio Visual Basic 6 e un modo pratico per riuscire facilmente a installarlo in ambiente Windows 7 a 64 bit.

Nota: se avete fretta e non volete leggere tutto lo sproloquio introduttivo, le istruzioni per installare VB6 su Windows 7 a 64 bit sono al fondo del post.

Ho letto di recente alcune statistiche d’uso relative agli ambienti di sviluppo per sistemi Microsoft e, come sospettavo, ho scoperto che c’è ancora una nutrita schiera di programmatori che fanno codice su Visual Basic 6. Il motivo? Pensate a cosa accadde fra la fine degli anni 90 e i primi anni 2000: grazie a tool di sviluppo come Visual Basic, che costavano poco e che erano relativamente facili da usare, molte aziende decisero di informatizzare di più e meglio le loro attività. Inoltre, grazie alla forte domanda delle PMI, molti programmatori (nuovi e riciclati da vecchi ambienti) videro in Visual Basic 6 la soluzione meno costosa e più versatile per creare applicazioni di – quasi – qualsiasi fascia.

Visual Basic 6 è solo questione di cuore?

Vennero così alla luce interi ERP scritti con quel nobile linguaggio, oltre a programmi di controllo macchine, sistemi di misurazione, piattaforme di raccolta dati eccetera. Molte aziende, fatto l’investimento e ottenuto i risultati sperati, considerarono il Visual Basic 6 come un punto d’arrivo, e non una sorta di passaggio verso il futuro. Accadde così che, all’avvento dei sistemi di sviluppo basati su .net (che promettevano molto) pochissimi imprenditori ebbero il coraggio – e il denaro – per fare il salto evolutivo che li avrebbe (forse) salvati dall’invecchiamento del VB6.

Per quanto riguarda i programmatori, molti scelsero consapevolmente di non passare al .net perché, non appena scoprirono l’immane cazzata fatta da Microsoft nell’ignorare la backward compatibility, si domandarono: “Quindi adesso che ho appena preso confidenza completa con il VB 6 dovrei imparare un linguaggio nuovo? Perché??”.  Poi, assaggiata la IDE del Visual Studio .net, quei pochi che resistettero per più di 5 minuti senza urlare dallo sconforto, di lì a breve si sarebbero ritirati a vita monastica.

Nel calduccio della propria casetta…

Scherzi a parte, uno dei difetti dei programmatori “di una certa età” è di sentirsi al sicuro nel proprio ambiente di sviluppo, cosa che non li spinge certo a cercare nuovi sistemi, nuove avventure e nuovi grattacapi. Neppure l’imprenditore che – spesso forzatamente – naviga a vista e cerca di tirare avanti la carretta con risorse striminzite, sente la necessità (e men che meno il dovere) di fare un passo del genere. Lui non sa cosa voglia dire VB6 o .net, e soprattutto non gli interessa. Lui dice: “I computer ci sono, le licenze dei sistemi operativi le abbiamo pagate, l’investimento sul software customizzato lo abbiamo fatto appena 5 anni fa, ergo adesso non spendiamo un centesimo perché: a) funziona, b) è pagato, c) al diavolo l’evoluzione“. Ottuso? Forse sì, ma devi decidere fra il pagare i fornitori e gli stipendi o il riscrivere tutto il software di controllo industriale perché Microsoft non supporta più ciò in cui hai creduto fino a ieri, beh, non credo sia difficile capire (e condividere) quale ovvia scelta verrà fatta.

…oppure in una tenda nei boschi?

Se escludiamo i cambiamenti forzati da eventi esterni, chi mai abbandonerebbe il comfort della propria casa per trasferirsi definitivamente a vivere in una tenda piazzata in boschi sconosciuti? Magari una prova la puoi fare, magari un paio di volte puoi godere dell’arietta fresca del mattino, magari scopri aspetti del tuo carattere che, nella routine del tuo territorio abituale, potresti non notare mai. Però significa dover cambiare radicalmente il tuo modo di approcciare anche le minime azioni quotidiane: per farti una doccia preferisci la vecchia, obsoleta, costosa acqua corrente, oppure non vedi l’ora di camminare nell’ignoto per 20 minuti (o 5 ore, dipende) per cercare una sorgente che avrà sì l’acqua più pura del mondo ma che ti è costata fatica e che ti permette appena di sciacquarti la faccia e magari un po’ anche le ascelle e ti fa trasalire ad ogni schizzo perché freddissima? E finché è estate va bene, ma poi quest’inverno che si fa?

Come si fa a installare Visual Basic 6 su sistemi Windows 7 a 64 bit

Tralasciando altre metafore (finalmente, direte) veniamo al dunque: grazie a quel processo sadico di Microsoft secondo cui un ambiente di sviluppo meraviglioso come il VB6 non meritava di essere ulteriormente supportato, lasciando inorriditi milioni di programmatori che lo amavano e lo amano tuttora, oggi è praticamente impossibile installarlo su sistemi Windows 7 a 64 bit usando il suo setup. Grazie all’estro di alcuni personaggi della Rete, però, è stato da tempo pubblicato in vari siti l’apposito workaround, segno che “ok, .net è il futuro, ma io voglio installare il VB6” non è una cosa che ho pensato solo io. Per comodità ve lo riporto qui, dando così un senso al titolo del post. Vediamo quindi come fare:

1) creiamo un file vuoto nella cartella c:\windows e denominiamolo MSJAVA.DLL (passaggio non indispensabile, il sistema pare funzionare lo stesso, ma così consigliano i guru)

2) copiamo il CD n. 1 di Visual Studio 6 in una cartella sul disco fisso del pc, chiamandola ad esempio VS6SETUP

3) apriamo la cartella appena creata, apriamo la sottocartella Setup e cerchiamo i files con estensione *.stf

4) a seconda della versione di Visual Studio 6 che intendiamo installare, il file potrà chiamarsi in modo diverso (vb98pro.stf oppure vs98ent.stf eccetera). Ciò che importa è l’estensione *.stf

5) quando troviamo il file in questione, ne facciamo due copie nella stessa cartella

6) una delle due copie appena fatte la rinominiamo in acmsetup.stf e l’altra in acost.stf

7) infine selezioniamo tutto il contenuto della cartella Setup, lo copiamo e lo incolliamo nella cartella superiore (che abbiamo chiamato VS6SETUP in questo esempio)

8) coi privilegi di amministratore eseguiamo il programma acmsetup.exe, dovrebbe avviarsi l’installazione senza altri problemi

9) in caso compaia ancora qualche messaggio di errore (cosa accaduta in un paio di situazioni) di solito basta riavviare il programma acmsetup.exe, e poi fila tutto liscio

Per installare il service pack 6 si procede nello stesso modo, facendo però attenzione che il file *stf si troverà nella cartella principale e non in una subfolder Setup (quindi niente copia dopo la creazione dei due files aggiuntivi).

È tutto. E se vi accade di sentirvi dire “ma come, ancora con VB6?” non fatevi prendere dallo sconforto o dall’ira funesta. Vi basterà pensare che ancora oggi ci sono persone ben pagate per scrivere o modificare programmi in RPG IV.

Preamplificatore Sansui C-1000: riparazione e ringiovanimento

Preamplificatore Sansui C-1000: riparazione e ringiovanimento

Un antico preamplificatore Sansui C-1000 alle prese con problemi di invecchiamento dei condensatori.

(immagine di copertina: credits @ Retrotronics)

Un cliente mi ha chiesto se potevo dare un’occhiata al suo sistema hi-fi un po’ datato (Sansui C-1000 con finale Sansui B-3000) per capire come mai la gamma dei medio alti fosse completamente appiattita e i bassi fossero “impastati” e poco definiti. Sono andato sul posto per sentire l’impianto connesso ai diffusori originali e vedere che non ci fossero problemi dell’insieme, piuttosto che della sola elettronica. Dopo un rapido ascolto e una verifica d’insieme dell’impianto (che – va detto – era allestito in modo curato e attento, con cablaggi adeguati e corretta disposizione spaziale), ho potuto soltanto teorizzare un probabile guaio dovuto all’età dell’insieme pre+amplificatore, confermata anche dall’ascolto in cuffia sul solo preamp.

Per individuare un problema di questo tipo di solito è sufficiente un orecchio attento. Certo, ci sono impianti magari sofferenti che però sono connessi a diffusori di fascia così bassa che non riescono a riprodurre metà dello spettro audio: in simili situazioni è difficile capire se l’amplificazione è da rivedere, o se sono le casse da buttare in discarica.

Si è deciso quindi di “operare”.

Lo schema

Per un riparatore, uno dei problemi principali dei sistemi commerciali è trovare gli schemi elettrici degli apparati. Quando ho iniziato a “divertirmi” con questo tipo di interventi, internet era stata inventata da poco e non era ancora diffusa nel mondo, tantomeno in Italia, storico fanalino di coda nella scala evolutiva occidentale. Quindi, o avevi il pezzo di carta, oppure potevi smarrirti in decine di telefonate alle succursali del produttore che immancabilmente ti dirottavano al centro di assistenza più vicino, che a sua volta si trovava almeno a cento chilometri dalla tua residenza e spesso pretendeva di fare l’intervento direttamente, non dava consigli e non spediva ricambi.

L’opzione più praticata era quella di dedurre uno schema di massima guardando le piste e i componenti sulle schede, con notevoli possibilità di errore e – spesso – impossibilità di reperire informazioni adeguate sui circuiti integrati con sigle non comuni. Se un guasto era “facile”, ovvero comportava la presenza di un componente scoppiato, bruciato o dissaldato, in genere si risolveva rapidamente. Altrimenti alimentavi il circuito e spruzzavi lo spray surgelato per individuare i componenti che andavano troppo in temperatura. O, ancora, in base allo schema dedotto procedevi con metodo euristico/tentonico (cioè a tentoni: seguire la logica e abbozzare quando questa non è sufficiente) e sostituivi ciò che più probabilmente poteva essere guasto.

Oggi c’è Internet e (quasi) tutto è reperibile online. Per fortuna, anche lo schema del Sansui C-1000. Da un primo sguardo risulta un discreto sforzo della Sansui nel realizzare un prodotto non proprio di fascia bassa. Le sezioni sono ben distinte, i componenti spaziati e ben disposti, c’è buona separazione fra i vari moduli e i cablaggi sono ridotti al minimo. Il tutto a conferma di ciò che il cliente stesso – a sua volta buon conoscitore dell’ambiente audio – è riuscito a raccogliere in termini di informazioni sul suo impianto: a quanto pare la Sansui, dopo un relativo abbandono del fronte europeo, alla fine degli anni ’80 decise di lanciare una linea più accattivante per riconquistare la sua quota di mercato. Realizzò così – insieme ad altri prodotti – il C-1000, da accoppiare ad esempio a uno dei finali B-1000 o B-3000.

Qui lo schema in PDF, per chi volesse studiarselo: sansui_c-1000_stereo_amplifier

Prime impressioni dopo l’apertura

Sansui C-1000 dopo l'apertura

Sansui C-1000 dopo l’apertura

A una prima occhiata si denota una buona costruzione, ben divisa, come già visto nello schema. I cavi volanti sono pochissimi e sono riconducibili a masse e distribuzione di alimentazione. Alcuni ponticelli nella sezione audio sono un po’ troppo lunghi e sono sintomo di un contenimento costi che ha impedito di rifare tutte le pcb a fronte di un problema riscontrato solo dopo la produzione. Oppure, forse ancora più probabile, la stessa piastra è un derivato di un progetto o di una versione precedente, adattata allo scopo.

Un dettaglio attira subito la mia attenzione: c’è sul pannello posteriore una presa a 220 volt che fa da “rinvio” per collegare il finale. All’interno del case essa è cablata a vista, senza alcun isolamento. Prima di qualsiasi altra operazione provvedo subito a isolare i contatti con del buon nastro da elettricista: non intendo assolutamente rischiare di toccare la 220. Per i principianti: c’è un motivo per il quale ci sono etichette di avviso di pericolo di morte se si apre un apparecchio alimentato a tensione di rete. Se non sapete cosa state facendo, non toccate nulla!

A discapito della qualità progettuale c’è una pecca considerevole: i componenti non sono particolarmente selezionati. In special modo, i condensatori elettrolitici sono fin troppo normali, per non dire cheap. Non c’era magari la pretesa di vedere componentistica di qualità audio in un pre di stampo consumer, ma si sperava almeno che ci fossero condensatori di buona marca e con caratteristiche tecniche più adeguate rispetto a quelle di quei miseri Tracon. Certo, uno dice: “Dopo quasi trent’anni non vorrai pretendere che gli elettrolitici siano come nuovi”. No, certo che no. Ma se fossero stati “buoni” non avrebbero dato (probabilmente) problemi.

Sezione di alimentazione

Sezione di alimentazione

Condensatori fusi

Condensatori fusi

La sezione di alimentazione presenta dei condensatori di livellamento tirati per il collo, pure questi di marca ciofeca (Taicon). A fronte di un’uscita stabilizzata a 12 volt, i condensatori sono di soli 16 volt/lavoro, mentre quelli in ingresso sono da 25 volt. La mamma mi ha sempre detto: “Non lesinare sui volt lavoro, mettili sempre belli grossi, se hai 12 volt mettili almeno da 25, dureranno di più”. La mamma aveva ragione: illuminando la sezione di alimentazione scopro che i condensatori hanno “versato” sulla scheda. Sono fusi, in pratica. Anche grazie al calore emesso da un povero 78M12 con aletta di raffreddamento sottodimensionata: ha fatto un alone brunito sopra e sotto il pcb cuocendo anche i condensatori. Un macello, bisogna sostituire tutto e mettere un’aletta adeguata.

L’intervento

Terminata l’analisi dello schema e la verifica visiva dei componenti sulla scheda, procedo a inventariare il necessario e a ordinare i condensatori audio grade per fare il revamping. Quando ricevo la merce dal fornitore rimuovo la scheda del controllo toni dai suoi supporti, dopo aver disconnesso gli spinotti cablati e aver svitato le ghiere dei potenziometri a pannello. Quest’ultima operazione comporta l’uso di chiavi a bussola da 12 (tipiche dei Giapponesi) con struttura sottile, altrimenti non entrano nelle sedi cave del pannello frontale. Una bella soffiata per rimuovere i residui di polvere non guasta. Per dissaldare i componenti uso un dissaldatore professionale con pompa a vuoto, in modo da non danneggiare i solder pad e, soprattutto, in modo da non impiegare troppo tempo con pompetta manuale e/o calza di rame. Se effettuato con adeguata cura, questo intervento consente di vedere i componenti vecchi cadere sul piano di lavoro per la sola forza di gravità. Non è consigliato il metodo dello “scalda e tira”, perché il rischio di danneggiare le piste è elevato (piste che, come detto, hanno un’età e potrebbero risentire di sollecitazioni meccaniche anche minime).

Audio grade, of course

Audio grade, of course

Una volta rimossi i vecchi condensatori, procedo a misurarne alcuni con un ponte LCR professionale per capire se e quanto sono invecchiati: due parti da 2.2 uF di targa danno un valore di 1,8 uF. Uno di 10 uF nominali dà 6 uF reali. A parte valori di ESR abbastanza alti, non ci sono particolari sconvolgimenti (cioè condensatori con valore reale inferiore del 50% rispetto a quello di targa) ma nei circuiti audio queste differenze possono farsi sentire eccome, specie se i condensatori sono già di bassa qualità in partenza. Ecco che è il momento di inserire i nuovi componenti: facendo attenzione a rispettare le polarità, non sempre chiare sulla serigrafia della scheda, posiziono tutti i condensatori e procedo alla saldatura. Colgo l’occasione per ripassare anche un paio di saldature “brutte”, male non gli fa.

Finita la scheda del controllo toni è il momento della piastra principale. I componenti audio da sosotituire sono pochi, ma la sezione di alimentazione è brutta e ha bisogno di discrete cure. Soprattutto per quanto riguarda il regolatore di tensione, che richiede un componente più robusto e un dissipatore più adeguato. Così metto un 7812C, che regge fino a 1 ampere di corrente, contro i 500 mA del 78M12. Il dissipatore lo ricavo da uno di recupero, tagliandone una fetta perché lo spazio a disposizione è scarso. Tutti i condensatori di filtro a monte e a valle vengono sostituiti, riportando l’alimentatore agli antichi splendori.

L’ascolto dopo l’operazione

Rispetto al “prima” non c’è paragone. La gamma medio alta è densa, calda, ben definita e – finalmente – espressiva. I tweeter sembrano cantare di gioia nel veder finalmente arrivare un po’ di pane per i loro denti. E qui mi fermo. Sì, perché potrei andare avanti per ore a scrivere della qualità del suono, o potrei pubblicare grafici e dati fino ad annoiarvi. Purtroppo però sono uno di quelli che sostiene fermamente la soggettività del gusto. Ciò che io sento perfetto, magari per un altro è mediocre, e viceversa. È perfettamente inutile scrivere altro, se non che sono molto soddisfatto del miglioramento ottenuto. Vedremo se l’orecchio esigente del cliente percepirà le stesse cose.

Test temperatura dopo il revamping

Test temperatura dopo il revamping

Faccio ancora un test prolungato per misurare il calore emesso dal regolatore di tensione che pare finalmente essere tornato in sé, emettendo solo 35°C dopo due ore di funzionamento. Prima, trascorsi 10 minuti, era sui 55°C. Completo le misurazioni godendomi ancora per un po’ il risultato ottenuto, poi richiudo il tutto, faccio la pulizia completa del case esterno e reimballo il pezzo in attesa di consegnarlo al cliente.