θα εξηγήσουμε πώς μπορούμε να γράψουμε,να διαβάσουμε και να σβήσουμε από/στήν registry των windows μέσω από την γλώσσα προγραμματισμού c#.ΝΕΤ και vb.net. Το παρακάτω πρόγραμμα δημιουργεί κλειδιά και καταχωρεί τιμές, στην registry, τις ανακτά από αυτήν και έπειτα τις διαγράφει. Επισημάνουμε ότι πρέπει να είστε προσεκτικοί στην διαγραφή κλειδιών από την registry, σε δικά σας προγράμματα, αφου αυτό μπορεί να επιρεάσει την συμπεριφορά των windows
Συμπεριλάβετε την παρακάτω γραμμή κώδικα στην αρχή του κώδικα σας,μαζί με τις άλλες βιβλιοθήκες που χρησιμοποιείτε
Τοποθετήστε τις παρακάτω συναρτήσεις στην βασική τάξη (class) της εφαρμογής σας.
{
write_to_registry();
read_from_registry();
delete_my_registry();
}
{
try
{
//Άνοιξε την κατηγορία HKEY_LOCAL_MACHINE\SOFTWARE της REGISTRY των windows
RegistryKey rk = Registry.LocalMachine.OpenSubKey(“SOFTWARE”, true);
//Δημιούργησε κλειδί με όνομα My testing
rk = rk.CreateSubKey(“My testing”);
//Δημιούργησε μεταβλητές key1,key2,key3 με τιμές 10,20,”alpha” αντίστοιχα
rk.SetValue(“key1″,10 );
rk.SetValue(“key2″, 20);
rk.SetValue(“key3″, “alpha”);
}
catch (Exception io) //Σε περίπτωση που τα παραπάνω δέν γίνουν εμφάνισε σχετικό μήνυμα σφάλματος
{
MessageBox.Show(null, io.Message, “Σφάλμα“, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
{
int tm1 = 0, tm2 = 0;
string tm3 = “”;
try
//Άνοιξε την κατηγορία HKEY_LOCAL_MACHINE\SOFTWARE της REGISTRY των windows
RegistryKey rk = Registry.LocalMachine.OpenSubKey(“SOFTWARE”, true);
//και έπειτα άνοιξε την υποκατηγορία “My testing” (αν υπάρχει)
rk = rk.OpenSubKey(“My testing”);
//διάβασε τις τιμές των μεταβλητών και κάνε την αντίστοιχη μετατροπή (casting)
tm1= (int) rk.GetValue(“key1″);
tm2 = (int)rk.GetValue(“key2″);
tm3 = (string) rk.GetValue(“key3″);
//Εμφάνισε τα αποτελέσματα
MessageBox.Show(“key1=” + tm1.ToString() + “ key2=” + tm2.ToString() + “ key3=” + tm3);
}
catch (Exception io) //Σε περίπτωση που τα παραπάνω δέν γίνουν εμφάνισε σχετικό μήνυμα σφάλματος
{
MessageBox.Show(null, io.Message, “Σφάλμα“, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
try
{
//Άνοιξε την κατηγορία HKEY_LOCAL_MACHINE\SOFTWARE της REGISTRY των windows
RegistryKey rk = Registry.LocalMachine.OpenSubKey(“SOFTWARE”, true);
//Διέγραψε το κλειδί “My testing” (αν υπάρχει)
rk.DeleteSubKeyTree(“My testing”);
rk.Close();
}
catch (Exception io) //Σε περίπτωση που τα παραπάνω δέν γίνουν εμφάνισε σχετικό μήνυμα σφάλματος
{
MessageBox.Show(null, io.Message, “Σφάλμα“, MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}



