Vi dico subito che la mia categorica risposta in merito è un chiaro e secco NO !!! Non sono utili e, nella stragrande maggioranza dei casi, vi causano più problemi di quelli che avete già e che state cercando di risolvere utilizzando uno dei tantissimi programmi che si presentano come panacea di tutti i mali del registro di Windows.

Detto questo vorrei cercare di argomentare il perchè di questa mia posizione.

Prima di tutto bisogna capire cosa è il registro di sistema di Windows. Semplificando all’estremo è un’area nella quale Windows, e le applicazioni che vi sono installate, memorizzano importanti informazioni per il loro corretto funzionamento oltre a numerose impostazioni personalizzate dall’utente. Per esempio nel registro di sistema viene memorizzato quali debbano essere i servizi ad avvio automatico, se siete collegati ad un dominio oppure no, quali sono le impostazioni della vostra scheda di rete, quali componenti sono stati installati, fino a che spaziatura delle icone avete scelto per la visualizzazione delle icone sul desktop. Ovviamente questi esempi sono una parte meno che infinitesimale delle migliaia di informazioni che sono contenute nel registro di sistema di Windows. Più aumenta la complessità del sistema operativo e delle applicazioni che vi sono installate, più il numero delle chiavi e dei valori che sono memorizzati nel registro aumenta. Per chi volesse farsi una cultura più approfondita sull’argomento vi consiglio questa pagina di Wikipedia.

Tuttavia la prima cosa da tenere bene a mente quando si affrontano problematiche legate, o riconducibili, al registro di sistema è la seguente : il registro di sistema è fatto, appunto, per il sistema, non per l’utente. Non aver chiaro questo concetto porta a problematiche conseguenze: dal momento che il registro di sistema è poco intellegibile per l’utente ci si affida ciecamente a prodotti di terze parti per la sua pulizia e manutenzione e, ancora, dato che quell’accrocchio di chiavi e valori presenta degli errori (secondo il programma che avete scelto per farne la pulizia) il problema della lentezza del computer o del suo malfunzionamento deve essere per forza li.

Allora vi propongo un piccolo test: procuratevi una copia aggiornata di CCleaner (sicuramente uno dei più accreditati prodotti per la manutenzione e la puliza del sistema) ed un computer nuovo nuovo senza sistema operativo installato e, da zero, installatevi Windows XP o Windows Vista da un CD originale. (se non avete la possibilità di farlo su un computer nuovo potete facilmente crearvi un pc virtuale utilizzando VirtualBox o VirtualPc). Subito dopo l’installazione e senza che vi siatema MAI collegati ad internet, senza aver installato nient’altro che il sistema operativo, senza aver modificato nessuna impostazione (a parte quelle richiestevi durante la procedura di installazione del sistema operativo), installate CCleaner e fategli fare un’analisi del registro. Troverà diverse chiavi che secondo lui sono errate e devono essere corrette. Eppure vi trovate nella “migliore” posizione che tanti sedicenti esperti vi consigliano nel momento in cui avete qualche problema apparentemente irrisolvibile con il computer : formatta e reinstalla (santo cielo quanto tempo perso). E allora perchè CCleaner trova degli errori ? Il computer è veloce e funziona bene.

Le risposta è presto detta: non esiste nessun tool per la pulizia del registro che sia completamente sicuro e che sappia esattamente cosa deve e cosa non deve esserci nel registro di sistema. CCleaner incluso. Tutte le chiavi ed i valori vanno analizzate secondo le configurazioni specifiche della macchina, secondo il software installato e questa combinazione varia da caso a caso. Potete immaginare un tool per il registro di sistema che sappia contemplare tutte le possibili chiavi corrette per tutti i software che esistono al mondo per windows in tutte le loro possibili combinazioni di installazione ? C’è chi ha installato Visual Studio e MS Office, c’è chi dispone di Adobe ma non di Visual Studio e installa Open Office, c’è chi usa Lotus Domino, chi lavora nella grafica e utilizza programmi specifici, c’è chi ha installato programmi sviluppati ad-hoc che per qualche motivo inseriscono chiavi e valori apparentemente inutili, senza riferimenti coerenti ma che per lo sviluppatore devono esserci. Ecc. Ecc. Ecc.

L’unico caso in cui il registro di sistema può essere causa di un grave malfunzionamento del computer è quando uno o più file dei quali è composto risultino danneggiati o non accessibili. Le dimensioni del registro e/o la presenza di chiavi o valori inutili non hanno mai portato ad alcuna evidenza reale di degrado delle prestazioni del computer ed il presunto aumento di velocità che si otterrebbe dalla puliza del registro è solo una grande balla venduta ad arte da moltissimi produttori di strumenti a pagamento per la pulizia del registro.

L’accesso, da parte del sistema operativo o da parte delle applicazioni, alle chiavi del registro avviene, appunto, per chiavi indicizzate: nessun programma “va alla ricerca di una chiave” come potreste fare voi utilizzando regedit. Punta diretto alla chiave che si aspetta di trovare e ne legge il valore. In alcuni casi vengono enumerate le eventuali sottochiavi ma si tratta pur sempre di letture sequenziali di infinitesime parti di una porzione già nota ed istantaneamente individuata all’interno del registro.
Al contrario se con regedit non sapete esattamente cosa state cercando e imponete una ricerca libera di chiavi o valori che contengono una determinata stringa o numero è evidente che più è alto il numero di dati contenuti nel registro, più sarà lunga l’operazione di ricerca di ciò che volete ottenere. Questo induce alla errata percezione che un registro “snello” possa velocizzare il sistema in generale ma non è così, perchè, come appena spiegato, durante il normale funzionamento del computer, tutte le applicazioni che hanno bisogno di leggere o scrivere qualche cosa dal/nel registro accedono direttamente, mediante chiavi senza fare ricerche top-down.

L’unica considerazione sensata relativa ad un collegamento tra le prestazioni della macchina ed il registro di sistema è questa: il registro di sistema è contenuto su file e se i file che lo compongono sono altamente frammentati, la lettura di questi file può essere rallentata come per qualsiasi altro file perchè il sistema operativo deve leggere dal disco i dati da posizioni diverse e non contigue. L’unico modo per ottimizzare la lettura da disco dei file che compongono il registro di sistema è quello di riscrivere l’intero contenuto dei file in aree su disco contigue. Ma non è quello che fanno i registry-cleaners: al contrario l’utilizzo frequente di tool per la pulizia del registro crea, attraverso la continua cancellazione delle chiavi e dei valori di registri ritenuti non corretti, crea dei piccoli spazi all’interno dei file che li rendono, alla lunga, altamente frammentati. Piuttosto, se proprio volete addossare le colpe di un degrado di performance al registro di sistema, cercate di deframmentarlo: l’ottimo PageDefrag di Sysinternals è quello che serve.

Ma convincetevi del fatto che è mille volte meglio avere il registro di sistema popolato con qualche decina o centinaia di chiave orfane piuttosto che far cancellare da un pulitore chiavi importanti (ricordatevi … importanti non per l’utente ma per il sistema). Ho visto troppe volte utenti che hanno zappato centinaia di chiavi senza pensarci solo perchè lo dice CCleaner (o altro programma come Advanced System Care o PCTools o chi più ne ha più ne metta) per poi accorgersi che (giusto per fare un esempio) MS Office al primo avvio richiede i CD di installazione, il tal programma non trova più i suoi file di help, estensioni associate a programmi non sono più leggibili … ecc. ecc.

Se dovete fare qualche modifica al registro di sistema (perchè magari un’analisi eseguita con HiJackThis rileva qualche impostazione che va corretta) fatelo a mano con regedit oppure, se non siete sicuri di cosa fare, fatevi aiutare da un esperto magari chiedendo consigli in un forum. Ma se non avete particolari problemi con il pc a parte un po’ di lentezza, lasciate tranquillo il registro e non fate girare alcun tool di pulizia del registro.

Probabilmente ci sarà chi argomenterà, anche con violenza, che CCleaner (o altri) sono eccellenti programmi: in parte è vero, anche io lo uso, ma solo per eccellenti funzionalità come la pulizia dei file temporanei, l’eliminazione delle cronologie di esplorazione ecc. Se devo usarlo per l’analisi del registro lo uso solo per ottenere dei suggerimenti ma non mi sognerei mai di fargli applicare tout-cour tutte le azioni che propone.

In conclusione tenete sempre a mente che il registro di sistema è un componente chiave del sistema operativo ed il suo danneggiamento o la sua manipolazione possono portare a risultati ben peggiori di quelli che si intendeva ottenere. Lasciate perdere i registry-cleaners … vi salverete anche dal fatto che moltissimi di questi in realtà non puliranno e non ottimizzeranno proprio nulla: sono fatti solo per installare sul vostro computer software che non vorreste mai.