表示 Windows 注册表中的项级节点。 此类是注册表封装。

System.Object 
  System.MarshalByRefObject
    Microsoft.Win32.RegistryKey

命名空间:  Microsoft.Win32
程序集:  mscorlib(在 mscorlib.dll 中)

名称 说明
Handle 获取一个 SafeRegistryHandle 对象,该对象表示当前 RegistryKey 对象封装的注册表项。
Name 检索项的名称。
SubKeyCount 检索当前项的子项数目。
ValueCount 检索项中值的计数。
View 获取用于创建注册表项的视图。

 方法

名称 说明
Close 关闭该项,如果该项的内容已修改,则将该项刷新到磁盘。
CreateSubKey(String) 创建一个新子项或打开一个现有子项以进行写访问。
CreateSubKey(String, RegistryKeyPermissionCheck) 使用指定的权限检查选项创建一个新子项或打开一个现有子项以进行写访问。
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions) 使用指定的权限检查和注册表选项,创建或打开一个用于写访问的子项。
CreateSubKey(String, RegistryKeyPermissionCheck, RegistrySecurity) 使用指定的权限检查选项和注册表安全性创建一个新子项或打开一个现有子项以进行写访问。
CreateSubKey(String, RegistryKeyPermissionCheck, RegistryOptions, RegistrySecurity) 使用指定的权限检查选项、注册表选项和注册表安全性,创建或打开一个用于写访问的子项。
DeleteSubKey(String) 删除指定的子项。
DeleteSubKey(String, Boolean) 删除指定的子项,并指定在找不到该子项时是否引发异常。
DeleteSubKeyTree(String) 递归删除子项和任何子级子项。
DeleteSubKeyTree(String, Boolean) 以递归方式删除指定的子项和任何子级子项,并指定在找不到子项时是否引发异常。
DeleteValue(String) 从此项中删除指定值。
DeleteValue(String, Boolean) 从此项中删除指定的值,并指定在找不到该值时是否引发异常。
Dispose 释放由 RegistryKey 类的当前实例占用的所有资源。
Flush 将指定的打开注册表项的全部特性写到注册表中。
FromHandle(SafeRegistryHandle) 根据指定的句柄创建注册表项。
FromHandle(SafeRegistryHandle, RegistryView) 利用指定的句柄和注册表视图设置创建注册表项。
GetAccessControl() 返回当前注册表项的访问控制安全性。
GetAccessControl(AccessControlSections) 返回当前注册表项的访问控制安全性的指定部分。
GetSubKeyNames 检索包含所有子项名称的字符串数组。
GetValue(String) 检索与指定名称关联的值。 如果注册表中不存在名称/值对,则返回 null。
GetValue(String, Object) 检索与指定名称关联的值。 如果未找到名称,则返回您提供的默认值。
GetValue(String, Object, RegistryValueOptions) 检索与指定的名称和检索选项关联的值。 如果未找到名称,则返回您提供的默认值。
GetValueKind 检索与指定名称关联的值的注册表数据类型。
GetValueNames 检索包含与此项关联的所有值名称的字符串数组。
OpenBaseKey 打开一个新的 RegistryKey,它使用指定的视图在本地计算机上表示请求的项。
OpenRemoteBaseKey(RegistryHive, String) 打开一个新的 RegistryKey,它表示远程计算机上的请求的项。
OpenRemoteBaseKey(RegistryHive, String, RegistryView) 打开一个新的注册表项,它使用指定的视图在远程计算机上表示请求的项。
OpenSubKey(String) 以只读方式检索子项。
OpenSubKey(String, RegistryKeyPermissionCheck) 检索指定的子项以进行读取或读/写访问。
OpenSubKey(String, Boolean) 检索指定的子项,并指定是否将写访问权限应用于该项。
OpenSubKey(String, RegistryKeyPermissionCheck, RegistryRights) 检索指定的子项以进行读取或读/写访问,请求指定的访问权限。
SetAccessControl 向现有注册表项应用 Windows 访问控制安全性。
SetValue(String, Object) 设置指定的名称/值对。
SetValue(String, Object, RegistryValueKind) 使用指定的注册表数据类型设置注册表项中的名称/值对的值。
ToString 检索此项的字符串表示形式。 (重写 Object.ToString()。)

要获取 RegistryKey 的实例,请使用 Registry 类的静态成员之一。

注册表充当计算机上操作系统和应用程序的中央信息储存库。 注册表根据存储在其中的元素的逻辑顺序,以分层形式组织(有关该层次结构中的基级项,请参见 Registry)。在注册表中存储信息时,请根据存储的信息类型选择适当的位置。 一定要避免损坏由其他应用程序创建的信息,原因是这样会导致那些应用程序出现意外的行为,并且还会对您自己的应用程序带来不利影响。

注册表项是组织基本单元在注册表,并且可以与文件资源管理器的文件夹比较。 每个具体的注册表项都可以有子项,就像文件夹下可以有子文件夹一样。 只要用户具有相应的权限,且注册表项不是基项或基项的下一级项,就可以删除该注册表项。 每个注册表项也可带有与其相关联的多个值(一个值就好比是一个文件),它们用于存储信息,例如,有关计算机上安装的应用程序的信息。 每个值存储特定的信息,可按需要对其进行检索或更新。 例如,可以为您的公司创建一个 RegistryKey(在项 HKEY_LOCAL_MACHINE\Software 下),然后为您的公司创建的每个应用程序创建一个子项。 每个子项保存特定于该应用程序的信息,如颜色设置、屏幕位置和大小或者可识别的文件扩展名。

注意,存储在注册表中的信息可由其他应用程序和用户使用,因此不要用注册表存储安全数据或关键的应用程序信息。

警告

在公开 RegistryKey 对象时不要采用一种可能会导致恶意程序创建成千上万的无意义的子项或键/值对的方式。 例如,不允许调用方输入任意键或值。

在 .NET Framework 4 中开始,注册表项的长度不再限于 255 个字符。

RegistryKey 类的更多相关文章

  1. 注册表操作 Microsoft.Win32.Registry与RegistryKey类

    一.注册表操作简介 Registry 类,RegistryKey 类提供了操作注册表的接口 RegistryValueKind:用于指定操作注册表的数据类型 一.注册表巢 在注册表中,最上面的节点是注 ...

  2. Registry 类

    提供表示 Windows 注册表中的根项的 RegistryKey 对象,并提供访问项/值对的 static 方法. 继承层次结构 System.Object   Microsoft.Win32.Re ...

  3. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  4. C#综合揭秘——通过修改注册表建立Windows自定义协议

    引言 本文主要介绍注册表的概念与其相关根项的功能,以及浏览器如何通过连接调用自定义协议并与客户端进行数据通信.文中讲及如何通过C#程序.手动修改.安装项目等不同方式对注册表进行修改.其中通过安装项目对 ...

  5. C#常用IO流与读写文件

    .文件系统 ()文件系统类的介绍 文件操作类大都在System.IO命名空间里.FileSystemInfo类是任何文件系统类的基类:FileInfo与File表示文件系统中的文件:Directory ...

  6. c# 其他技术学习

    1.注册表编辑 为了方便对注册表进行操作,.NET提供了Registry类和RegistryKey类 2.API函数的应用 (1)自定义特性的代码:在类.属性.方法的上方加上“[]”的代码 (2)有个 ...

  7. WinForm应用程序之注册模块的设计与实现

    Posted on 2012-11-13 10:21 星星之火116 阅读(3260) 评论(4) 编辑 收藏 我们在安装一些桌面应用程序的时候,往往在会有提示当前用户使用的是试用版,要进行注册.刚好 ...

  8. 【转】C#综合揭秘——通过修改注册表建立Windows自定义协议

    引言 本文主要介绍注册表的概念与其相关根项的功能,以及浏览器如何通过连接调用自定义协议并与客户端进行数据通信.文中讲及如何通过C#程序.手动修改.安装项目等不同方式对注册表进行修改.其中通过安装项目对 ...

  9. C#读取注册表信息

    注册表是视窗系统的一个核心的数据库,在这个数据库中存放中与系统相关的各种参数,这些参数直接控制中系统的启动.硬件的驱动程序安装信息以及在视窗系统上运行的各种应用程序的注册信息等.这就意味着,如果注册表 ...

随机推荐

  1. Java简单购物车设计

            还是存在一些问题(比如clear函数没效果.乱码,单独测试也没,确实找不到问题),路过的给解决下... 第一部分     会话控制 会话跟踪: 使用隐藏表单字段 URL重写,实际就是直 ...

  2. 安卓天天练练(四)drawable state 属性

    今天又作茧自缚(item 写成 itme ╮(╯▽╰)╭ elipse还自动闭合了标签,来回查查查看报错,为啥点击无效呢!) 真欠抽,怪不得上班地铁上被个sb踢到脚趾头(目测有可能是同家公司的..同站 ...

  3. 修改uCOS_II以实现“优先级+时间片”联合调度

    本文在uCOS II上增加时间片任务调度的的原理: 对设置为同优先级的任务使用时间片调度,不同优先级任务仍然使用uCOS II的优先级调度策略.在同优先级任务的时间片调度中,所有任务暂时时间片长度固定 ...

  4. OOD/DDP 中的 SRP 原则

    单一职责原则 SRP(The Single Responsibility Principle):一个类应该只有一个发生变化的原因.这里的变化指职责的变化. SRP 很好理解,它的要求是 让一个类只做一 ...

  5. Hadoop 新 MapReduce 框架 Yarn 详解

    Hadoop 新 MapReduce 框架 Yarn 详解: http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/ Ap ...

  6. ServiceStack.Redis常用操作 - 事务、并发锁

    一.事务 使用IRedisClient执行事务示例: using (IRedisClient RClient = prcm.GetClient()) { RClient.Add("key&q ...

  7. centos6.5建立cloudera-cdh4.6本地源

    1.准备:      centos6.5系统,root用户 2.安装所需包:      sudo yum install yum-utils createrepo 3.下载cdh4.6的repo:   ...

  8. 安卓系统运行Debian-7.0环境(Debian for android)

    新手使用说明(下载地址在文章末尾): 〇.警告:root 有风险,折腾 Linux 更有风险,因使用 Debian for Armel 导致任何直接或间接的损失,本人不负任何责任:一.将 debian ...

  9. Day 16: Goose Extractor —— 好用的文章提取工具

    Day 16: Goose Extractor -- 好用的文章提取工具 Day 16: Goose Extractor -- 好用的文章提取工具

  10. Ubuntu 虚拟机环境安装配置指南

    1. 安装Ubuntu到虚拟机. 到 Ubuntu 上下载桌面版iso文件,加载到虚拟机,开始安装,傻瓜式操作不用多说.2. 调整屏幕分辨率. 虚拟机软件我是用的virtual box,在工具栏上设备 ...