Nelle applicazioni Windows può capitare di dover salvare o leggere delle informazioni contenute nel registro di sistema.
Per poter accedere facilmente alla classe Registry aggiungere nelle dichiarazioni la stringa:
using Microsoft.Win32;
A questo punto per visualizzare un valore presente nel registro è sufficiente aggiungere sull'evento load di un windows form:
RegistryKey OurKey = Registry.CurrentUser;
OurKey = OurKey.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings", true);
MessageBox.Show(OurKey.GetValue("ProxyServer").ToString());
La prima cosa che dobbiamo specificare è il nodo principale in cui vogliamo cercare la nostra stringa.
Ad esempio nelle righe di codice precedenti è stato specificato CurrentUser, ma questo valore può assumere anche: LocalMachine, ClassesRoot, Users, PerformanceData, CurrentConfig, DynData.
Una volta "aperta" la sottochiave che ci interessa, l'oggetto RegistryKey può essere aperto in modalità lettura o modalità lettura/scrittura.
Questo lo si ottiene passando il valore false (per la sola lettura) o il valore true (per la lettura/scrittura) al metodo OpenSubKey.
A questo punto con il metodo GetValue e il passaggio della stringa contenente il nome della chiave di registro, otteniamo il valore della chiave stessa.
Con il metono invece SetValue, il passaggio della stringa contenente il nome della chiave di registro e il valore che vogliamo fargli assumere, impostiamo la chiave con il valore desiderato.
Informazioni su Registry Class MSDN.