天天看点

C#注册表操作类

C#注册表操作类

时间:2010-07-10 15:11:38 来源:网络 作者:未知 点击:526次

using System;

using System.Collections.Generic;

using System.Text;

using Microsoft.Win32;

namespace Haode

{

    class Regedit

    {

        /// <summary>

        /// 读取指定名称的注册表的值

        /// </summary>

        /// <param name="name">注册表值</param>

        /// <returns></returns>

        private string GetRegistData(string name)

        {

            string registData;

            RegistryKey hkml = Registry.LocalMachine;

            RegistryKey software = hkml.OpenSubKey("SOFTWARE", true);

            RegistryKey aimdir = software.OpenSubKey("China228.com", true);

            registData = aimdir.GetValue(name).ToString();

            return registData;

        }

        /// 注册表中写数据

        /// <param name="name">注册表</param>

        /// <param name="tovalue">值</param>

        private void WTRegedit(string name, string tovalue)

            RegistryKey hklm = Registry.LocalMachine;

            RegistryKey software = hklm.OpenSubKey("SOFTWARE", true);

            RegistryKey aimdir = software.CreateSubKey("China228.com");

            aimdir.SetValue(name, tovalue);

        /// .删除注册表中指定的注册表项

        private void DeleteRegist(string name)

            string[] aimnames;

            aimnames = aimdir.GetSubKeyNames();

            foreach (string aimKey in aimnames)

            {

                if (aimKey == name)

                    aimdir.DeleteSubKeyTree(name);

            }

        /// 判断指定注册表项是否存在

        private bool IsRegeditExit(string name)

            bool _exit = false;

            string[] subkeyNames;

            subkeyNames = aimdir.GetSubKeyNames();

            foreach (string keyName in subkeyNames)

                if (keyName == name)

                {

                    _exit = true;

                    return _exit;

                }

            return _exit;

   }

}