handling registry entry using csharp
 

public class Class1
    {
        RegistryKey baseregistekey;
        string subKey;
        [System.Runtime.InteropServices.DllImport("user32.dll")]
        internal static extern IntPtr SetForegroundWindow(IntPtr hWnd);
       
        public Class1(RegistryKey basesa,string subk)
        {
            baseregistekey = basesa;
            subKey = subk;
        }
        public bool deleteRegistry(string KeyName)
        {
            // Opening the registry key
            Microsoft.Win32.RegistryKey rk = baseregistekey;// baseRegistryKey;
            // Open a subKey as read-only
            RegistryKey sk1 = rk.CreateSubKey(subKey);
            // If the RegistrySubKey doesn't exist -> (null)
            if (sk1 == null)
            {
                return false;
            }
            else
            {
                sk1.DeleteValue(KeyName);
                return true;
            }
        }
        public string readRegistry(string KeyName)
        {
            // Opening the registry key
            Microsoft.Win32.RegistryKey rk = baseregistekey;// baseRegistryKey;
            // Open a subKey as read-only
            RegistryKey sk1 = rk.OpenSubKey(subKey);
            // If the RegistrySubKey doesn't exist -> (null)
            if (sk1 == null)
            {
                return null;
            }
            else
            {
                try
                {
                    //sk1.DeleteSubKey(
                    return (string)sk1.GetValue(KeyName.ToUpper());
                }
                catch (Exception e)
                {
                    
                    return e.ToString()+ e.Message;
                }
            }
        }
        public bool Write(string KeyName, object Value)
        {
            
                // Setting
                RegistryKey rk = baseregistekey;
                // I have to use CreateSubKey 
                // (create or open it if already exits), 
                // 'cause OpenSubKey open a subKey as read-only
                RegistryKey sk1 = rk.CreateSubKey(subKey);
                // Save the value
                sk1.SetValue(KeyName.ToUpper(), Value);

                return true;
           
        }
        public string [] GetSubKeyValueNames()
        {
            RegistryKey rk = baseregistekey;
            RegistryKey sk1 = rk.OpenSubKey(subKey);

            // If the RegistryKey exists...
            if (sk1 != null)
                return sk1.GetValueNames();
            else
                return null;
        }
        public int SubKeyCount()
        {
            
                // Setting
                RegistryKey rk = baseregistekey;
                RegistryKey sk1 = rk.OpenSubKey(subKey);
                
                // If the RegistryKey exists...
                if (sk1 != null)
                    return sk1.GetValueNames().Length;
                else
                    return 0;
            
            
        }
    }

share on whatapp
153 Views

Comments

 
 
Private Policy   Terms of Service   4922