Windows 操作系统的注册表包含了很多有关计算机运行的配置方式,打开注册表我们可以看到注册表是按类似于目录的树结构组织的,其中第二级目录包含了五个预定义主键分别是:HKEY_CLASSES_ROOT,HKEY_CURRENT_USER,HKEY_LOCAL_MACHINE,HKEY_USERS,HKEY_CURRENT_CONFIG。
下面我们来分别解释这5个类的作用
HKEY_CLASSES_ROOT该主键包含了文件的扩展名和应用程序的关联信息以及Window Shell和OLE用于储存注册表的信息。该主键下的子键决定了在WINDOWS中如何显示该类文件以及他们的图标,该主键是从HKEY_LCCAL_MACHINE\SOFTWARE\Classes映射过来的。
HKEY_CURRENT_USER该主键包含了如用户窗口信息,桌面设置等当前用户的信息。
HKEY_LOCAL_MACHINE主键包含了计算机软件和硬件的安装和配置信息,该信息可供所有用户使用
HKEY_USERS该主键记录了当前用户的设置信息,每次用户登入系统时,就会在该主键下生成一个与用户登入名一样的子键,该子键保存了当前用户的桌面设置、背景位图、快捷键,字体等信息。一般应用程序不直接访问改主键,而是通过主键HKEY_CURRENT_USER进行访问。
HKEY_CURRENT_CONFIG该主键保存了计算机当前硬件的配置信息,这些配置可以根据当前所连接的网络类型或硬件驱动软件安装的改变而改变。
C#也支持对注册表的编辑,.NET框架在Microsoft.Win32名字空间中提供了两个类来操作注册表:Registry和RegistryKey。这两个类都是密封类不允许被继承。下面我们分别来介绍这两个类。
Registry类提供了7个公共的静态域,分别代表7个基本主键(其中两个在XP系统中没有,在这就不介绍了)分别是:Registry.ClassesRoot,Registry.CurrentUser,Registry.LocalMachine,Registry.Users,Registry.CurrentConfig。它们分别对应哪几个键我想各位一看就会知道吧。
RegistryKey类中提供了对注册表操作的方法。要注意的是操作注册表必须符合系统权限,否则将会抛出错误。
下面我们就来几个操作注册表常用的几个方法
创建子键的方法原型为:
public RegistryKey CreateSubKey(string sunbkey);
参数sunbkey表示要创建的子键的名称或路径名。创建成功返回被创建的子键,否则返回null。
打开子键的方法原型为:
public RegistryKey OpenSubKey(string name);
public RegistryKey OpenSubKey(string name,bool writable);
参数name表示要打开的子键名或其路径名,参数writable表示被打开的子键是否允许被修改,第一个方法打开的子键是只读的。Microsoft.Win32类还为我们提供了另一个方法,用于打开远程计算机上的注册表,方法原型为:
public static RegistryKey OpenRemoteBaseKey(RegistryHive hKey,string machineName);
删除子键的方法原型为:
public void DeleteKey(string subkey);
该方法用于删除指定的主键。如果要删除的子键还包含主键则删除失败,并返回一个异常,如果要彻底删除该子键极其目录下的子键可以用方法DeleteSubKeyTree,该方法原型如下:
public void DeleteKeyTree(string subkey);
读取键值的方法原型如下:
public object GetValue(string name);
public object GetValue(string name,object defaultValue);
参数name表示键的名称,返回类型是一个object类型,如果指定的键不存在则返回null。如果失败又不希望返回的值是null则可以指定参数defaultValue,指定了参数则在读取失败的情况下返回该参数指定的值。
设置键值的方法原型如下:
public object SetValue(string name,object value);
文章来自学IT网:http://www.xueit.com/html/2009-03/21_834_00.html
分享到:
相关推荐
在IT领域,C#是一种...在这个压缩包文件`ConsoleClient`中,可能包含了一个使用上述方法实现的控制台应用程序示例,通过运行这个程序,你可以更直观地了解C#操作注册表的实际过程。建议结合源代码学习,以加深理解。
C#编程 系统及注册表操作 DummyKey(源码)(源码)C#编程 系统及注册表操作 DummyKey(源码)(源码)C#编程 系统及注册表操作 DummyKey(源码)(源码)C#编程 系统及注册表操作 DummyKey(源码)(源码)C#编程 系统及注册表操作 ...
C#编程 系统及注册表操作 GetMousePosition(源码)(源码)C#编程 系统及注册表操作 GetMousePosition(源码)(源码)C#编程 系统及注册表操作 GetMousePosition(源码)(源码)C#编程 系统及注册表操作 GetMousePosition...
注册表是Windows操作系统中的一个核心数据库,它用于存储系统和应用程序的配置信息。由于其存储了大量重要的系统和软件配置信息,因此在进行系统编程或自动化任务时,经常需要对注册表进行读写操作。C#通过提供...
C#编程 系统及注册表操作 DesktopTxtTrans(源码)(源码)C#编程 系统及注册表操作 DesktopTxtTrans(源码)(源码)C#编程 系统及注册表操作 DesktopTxtTrans(源码)(源码)C#编程 系统及注册表操作 DesktopTxtTrans(源码)...
利用C#操作Windows操作系统注册表基类 来源:红黑联盟
C#编程 系统及注册表操作 SBCorDBC(源码)(源码)C#编程 系统及注册表操作 SBCorDBC(源码)(源码)C#编程 系统及注册表操作 SBCorDBC(源码)(源码)C#编程 系统及注册表操作 SBCorDBC(源码)(源码)C#编程 系统及注册表操作 ...
C#编程 系统及注册表操作 SystemLock(源码)(源码)C#编程 系统及注册表操作 SystemLock(源码)(源码)C#编程 系统及注册表操作 SystemLock(源码)(源码)C#编程 系统及注册表操作 SystemLock(源码)(源码)C#编程 系统及...
C#编程 系统及注册表操作 AutoRunPro(源码)(源码)C#编程 系统及注册表操作 AutoRunPro(源码)(源码)C#编程 系统及注册表操作 AutoRunPro(源码)(源码)C#编程 系统及注册表操作 AutoRunPro(源码)(源码)C#编程 系统及...
C#编程 系统及注册表操作 MouseDragTxt(源码)(源码)C#编程 系统及注册表操作 MouseDragTxt(源码)(源码)C#编程 系统及注册表操作 MouseDragTxt(源码)(源码)C#编程 系统及注册表操作 MouseDragTxt(源码)(源码)C#编程 ...
C#编程 系统及注册表操作 WriteRegedit(源码)(源码)C#编程 系统及注册表操作 WriteRegedit(源码)(源码)C#编程 系统及注册表操作 WriteRegedit(源码)(源码)C#编程 系统及注册表操作 WriteRegedit(源码)(源码)C#编程 ...
C#编程 系统及注册表操作 CourseManage(源码)(源码)C#编程 系统及注册表操作 CourseManage(源码)(源码)C#编程 系统及注册表操作 CourseManage(源码)(源码)C#编程 系统及注册表操作 CourseManage(源码)(源码)C#编程 ...
在C#中,对Windows注册表进行操作是程序员在开发应用程序时可能会遇到的需求,尤其是在处理文件关联、系统配置等方面。Windows注册表是一个存储系统和应用程序设置的重要数据库,它按照类似于目录的树形结构组织,...
C#编程 系统及注册表操作 RunManage(源码)(源码)C#编程 系统及注册表操作 RunManage(源码)(源码)C#编程 系统及注册表操作 RunManage(源码)(源码)C#编程 系统及注册表操作 RunManage(源码)(源码)C#编程 系统及注册表...
C#编程 系统及注册表操作 SetAnimateMouse(源码)(源码)C#编程 系统及注册表操作 SetAnimateMouse(源码)(源码)C#编程 系统及注册表操作 SetAnimateMouse(源码)(源码)C#编程 系统及注册表操作 SetAnimateMouse(源码)...
C#编程 系统及注册表操作 ControlFormMove(源码)(源码)C#编程 系统及注册表操作 ControlFormMove(源码)(源码)C#编程 系统及注册表操作 ControlFormMove(源码)(源码)C#编程 系统及注册表操作 ControlFormMove(源码)...
C#编程 系统及注册表操作 WatchMemory(源码)(源码)C#编程 系统及注册表操作 WatchMemory(源码)(源码)C#编程 系统及注册表操作 WatchMemory(源码)(源码)C#编程 系统及注册表操作 WatchMemory(源码)(源码)C#编程 系统...
C#编程 系统及注册表操作 LCRComputer(源码)(源码)C#编程 系统及注册表操作 LCRComputer(源码)(源码)C#编程 系统及注册表操作 LCRComputer(源码)(源码)C#编程 系统及注册表操作 LCRComputer(源码)(源码)C#编程 系统...
C#编程 系统及注册表操作 RunOnceByMutex(源码)(源码)C#编程 系统及注册表操作 RunOnceByMutex(源码)(源码)C#编程 系统及注册表操作 RunOnceByMutex(源码)(源码)C#编程 系统及注册表操作 RunOnceByMutex(源码)(源码)...
C#编程 系统及注册表操作 ModifyComputerName(源码)(源码)C#编程 系统及注册表操作 ModifyComputerName(源码)(源码)C#编程 系统及注册表操作 ModifyComputerName(源码)(源码)C#编程 系统及注册表操作 ...