Lớp myRegistry bên dưới cung cấp cho ta các hàm thao tác với Registry của windows như:
- Đọc giá trị của 1 key.
- Đăng ký key và gi giá trị của key vào registry.
- Xóa key đã đăng ký.
public sealed class myRegistry { /// <summary> /// Method is used to read value from Registry. /// </summary> /// <param name="SubKey">Subkey which contains key to be select.</param> /// <param name="KeyName">Key which value will be get.</param> /// <returns>Value of string</returns> public static string Read(string SubKey, string KeyName) { // Base registry key. RegistryKey baseRegistryKey = Microsoft.Win32.Registry.LocalMachine; // Opening the registry key RegistryKey rk = baseRegistryKey; // Open a subKey as read-only RegistryKey sk1 = rk.CreateSubKey(SubKey); try { // If the RegistryKey exists I get its value or null is returned. return (string)sk1.GetValue(KeyName.ToUpper()); } catch { return null; } finally { if (sk1 != null) { sk1.Close(); } } } /// <summary> /// Method is used to write value to Registry. /// </summary> /// <param name="SubKey">Subkey which contains key to be select.</param> /// <param name="KeyName">Key which value will be inserted.</param> /// <param name="Value">Value to be write.</param> /// <returns></returns> public static bool Write(string SubKey, string KeyName, object Value) { RegistryKey baseRegistryKey = Microsoft.Win32.Registry.LocalMachine; // Setting RegistryKey rk = baseRegistryKey; // Check if there is no SubKey, create sub key. RegistryKey sk1 = null; try { sk1 = rk.CreateSubKey(SubKey); // Save the value sk1.SetValue(KeyName.ToUpper(), Value); return true; } catch { return false; } finally { if (sk1 != null) { sk1.Close(); } rk.Close(); } } /// <summary> /// /// </summary> /// <param name="SubKey"></param> /// <param name="KeyName"></param> /// <returns></returns> public static bool DeleteKey(string SubKey, string KeyName) { try { RegistryKey baseRegistryKey = Microsoft.Win32.Registry.LocalMachine; // Setting RegistryKey rk = baseRegistryKey; // Check if there is no SubKey, create sub key. RegistryKey sk1 = null; sk1 = rk.OpenSubKey(SubKey); sk1 = rk.CreateSubKey(SubKey); // Delete key. sk1.DeleteValue(KeyName); return true; } catch { return false; } } }
nosomovo