[Articolo] Modificare il registro di sistema in Windows


Difficoltà articolo (0->10): 5

Oggi parliamo del registro di Windows, e in quali modi è possibile modificarlo (con particolare attenzione tramite gli script).

Da wikipedia, il registro di sistema “è una base di dati in cui sono custodite le opzioni e le impostazioni di un sistema operativo di tipo Microsoft Windows, e di tutte le applicazioni installate. Il concetto di registro di sistema è strettamente legato alla logica dei sistemi operativi Microsoft, che conservano tutte le proprie impostazioni in un numero ristretto di file.” Dunque, è quella porzione del sistema operativo in cui sono custodite tutte le impostazioni più importanti del sistema, e con le quali è fondamentale fare attenzione.

Vediamo adesso come possiamo apportare modifiche a tale registro, che possono essere manuali oppure automatiche, nel caso in cui usassimo degli script per automatizzare le operazioni.

Il caso più semplice è quando dobbiamo modificare una chiave di registro  o comunque un numero ridotto di chiavi. In tal caso possiamo farlo direttamente aprendo il registro con il comando REGEDIT. Per aprire l’editor premere i tasti WIN+R, che comporterà l’apertura di questa finestra:

Run, window, command, Windows, start, launch, open

Adesso, dobbiamo inserire il comando REGEDIT, e ci verrà mostrato il registro di sistema, all’interno del quale possiamo ricercare la chiave/chiavi di nostro interesse.

E’ anche possibile modificare le chiavi di registro usando il comando REG, richiamabile dal prompt dei comandi (CMD), e la sua sintassi è consultabile con “REG /?”.

Per modificare le chiavi di registro tramite script invece ci sono 2 modi:

  1. Script di tipo reg, con estensione .reg.
  2. Script batch, con estensione bat.

Uno script di tipo reg, è un file che ha estensione di sistema .reg, ed è un file testuale che deve contenere necessariamente chiavi di registro. Un particolarità che con un file .reg non possiamo cancellare singoli valori ma solo le chiavi, a differenza di un file batch.  Inoltre, con un file reg non riceveremo errore se qualcosa dovesse andare storto durante la sua esecuzione, mentre con un file batch ci verrà restituito sempre un errore in caso di qualche problema

Passando alla sintassi che deve avere un file reg, vediamo che è necessario mettere tra le quadre [] il percorso della posizione di registro da modificare e nella riga dopo il nome della chiave tra apici doppi, quindi il carattere uguale (=), il tipo di valore , il carattere dei due punti (:) , ed infine il valore della chiave. E’ un’eccezione il tipo stringa, per cui non è necessario specificare il tipo ed è invece sufficiente inserire tra apici doppi il valore stesso. Vediamo un elenco delle varie possibilità:

  • “Valore”=”stringa” per i valori di tipo REG_SZ
  • “Valore”=dword:stringa per i valori di tipo REG_DWORD
  • “Valore”=hex:stringa per i valori di tipo REG_BINARY
  • “Valore”=hex(2):stringa per i valori di tipo REG_EXPAND_SZ
  • “Valore”=hex(7):stringa per i valori di tipo REG_MULTI_SZ

Dunque, per i valori REG_SZ e REG_DWORD è pensabile inserire a mano i valori, mentre potrebbe diventare non proprio fattibile farlo per i valori REG_BINARY, REG_MULTI_SZ e REG_EXPAND_SZ.

Di seguito vediamo un esempio di file .reg:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Desktop]

“MenuShowDelay”=”100”

“ForegroundFlashCount”=dword:00000003

“UserPreferencesMask”=hex:b0,12,01,80

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]

“AppData”=hex(2):25,00,55,00,53,00,45,00,52,00,50,00,52,00,4f,00,46,00,49,00,\

4c,00,45,00,25,00,5c,00,44,00,61,00,74,00,69,00,20,00,61,00,70,00,70,00,6c,\

00,69,00,63,00,61,00,7a,00,69,00,6f,00,6e,00,69,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management]

“PagingFiles”=hex(7):45,00,3a,00,5c,00,70,00,61,00,67,00,65,00,66,00,69,00,6c,\

00,65,00,2e,00,73,00,79,00,73,00,20,00,33,00,38,00,34,00,20,00,35,00,31,00,\

Quanto appena visto si può anche scrivere in modo maggiormente leggibile con un file .bat nel seguente modo:

REG ADD “HKCU\Control Panel\Desktop” /t REG_SZ /v MenuShowDelay /d 100 /f

REG ADD “HKCU\Control Panel\Desktop” /t REG_DWORD /v ForegroundFlashCount /d 3 /f

REG ADD “HKCU\Control Panel\Desktop” /t REG_BINARY /v UserPreferencesMask /d b0120180 /f

REG ADD “HKCU\”Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders” /t REG_EXPAND_SZ /v AppData /d “%USERPROFILE%\Dati Applicazioni” /f

REG ADD “HKLM\”SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management” /t REG_MULTI_SZ /v PaginFiles /d “E:\pagefile.sys 384 512” /f

Faccio notare, che il parametro f alla fine di ogni riga sovrascrive le voci senza chiedere conferma.

roghan

Annunci

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...