C#操作注册表之Registry类

提供表示 Windows 注册表中的根项的 RegistryKey 对象,并提供访问项/值对的 static 方法。

继承层次结构

System.Object 
  Microsoft.Win32.Registry

命名空间:  Microsoft.Win32

程序集:  mscorlib(在 mscorlib.dll 中)

方法

名称 说明
GetValue 检索与指定的注册表项中的指定名称关联的值。 如果在指定的项中未找到该名称,则返回您提供的默认值;或者,如果指定的项不存在,则返回 null。
SetValue(String, String, Object) 设置指定的注册表项的指定名称/值对。 如果指定的项不存在,则创建该项。
SetValue(String, String, Object, RegistryValueKind) 通过使用指定的注册表数据类型,设置该指定的注册表项的名称/值对。 如果指定的项不存在,则创建该项。

字段

名称 说明
ClassesRoot 定义文档的类型(或类)以及与那些类型关联的属性。 该字段读取 Windows 注册表基项 HKEY_CLASSES_ROOT。
CurrentConfig 包含有关非用户特定的硬件的配置信息。 该字段读取 Windows 注册表基项 HKEY_CURRENT_CONFIG。
CurrentUser 包含有关当前用户首选项的信息。 该字段读取 Windows 注册表基项 HKEY_CURRENT_USER
DynData 已过时。包含动态注册表数据。 该字段读取 Windows 注册表基项 HKEY_DYN_DATA。
LocalMachine 包含本地计算机的配置数据。 该字段读取 Windows 注册表基项 HKEY_LOCAL_MACHINE。
PerformanceData 包含软件组件的性能信息。 该字段读取 Windows 注册表基项 HKEY_PERFORMANCE_DATA。
Users 包含有关默认用户配置的信息。 该字段读取 Windows 注册表基项 HKEY_USERS。

备注

此类提供在运行 Windows 的计算机上的注册表中找到的标准根项集。 注册表是一个存储设备,包含有关应用程序、用户和默认系统设置的信息。 例如,应用程序可使用注册表来存储在应用程序关闭后需要保留的信息,并可在应用程序重新加载时访问这些信息。 例如,可以存储颜色首选项、屏幕位置或窗口大小。 通过将信息存储在注册表中的不同位置,可以为各位用户分别控制这些数据。

由 Registry 类公开的基或根 RegistryKey 实例描绘注册表中的子项和值的基本存储机制。 所有的项都是只读的,因为注册表依赖于它们的存在。 由 Registry 公开的项有:

名称 说明
CurrentUser 存储有关用户首选项的信息。
LocalMachine 存储本地计算机的配置信息。
ClassesRoot 存储有关类型(和类)及其属性的信息。
Users 存储有关默认用户配置的信息。
PerformanceData 存储软件组件的性能信息。
CurrentConfig 存储非用户特定的硬件信息。
DynData 存储动态数据。

一旦标识了希望在其下存储/检索注册表中信息的根项后,可以使用 RegistryKey 类添加或移除子项和操作给定项的值。

硬件设备可以使用即插即用接口将信息自动放在注册表中。 安装设备驱动程序的软件可以通过向标准 API 写入将信息放在注册表中。

获取和设置值的静态方法

在 .NET Framework 2.0 版中,Registry 类还包含从注册表项设置和检索值的 staticGetValue 和 SetValue 方法。 每次使用这两种方法时,它们都会打开和关闭注册表项,所以,当您访问大量值时,使用这两种方法不如使用 RegistryKey 类中的类似方法。

RegistryKey 类还提供了可用来为注册表项设置 Windows 访问控制安全性的方法、可用来在检索值之前测试值的数据类型的方法以及删除项的方法。

到此这篇关于C#操作注册表之Registry类的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C# 操作Windows注册表的实现方法

    目录 代码示例 示例一:禁用 Windows 7 系统自动更新 示例二:禁用 Windows 10 提醒 常见问题 本文将给出操作注册表的C#代码以及开发中遇到的问题. 代码示例 通过RegistryKey类的OpenBaseKey方法获取注册表根节点. public static RegistryKey OpenBaseKey(RegistryHive hKey, RegistryView view) 示例一:禁用 Windows 7 系统自动更新 // win7自动更新设置的注册表路径 st

  • c#注册表操作类分享

    复制代码 代码如下: /// <summary>/// 注册表基项静态域/// /// 主要包括:/// 1.Registry.ClassesRoot 对应于HKEY_CLASSES_ROOT主键/// 2.Registry.CurrentUser 对应于HKEY_CURRENT_USER主键/// 3.Registry.LocalMachine 对应于 HKEY_LOCAL_MACHINE主键/// 4.Registry.User 对应于 HKEY_USER主键/// 5.Registry.

  • C#操作windows注册表的方法

    本文实例讲述了C#操作windows注册表的方法.分享给大家供大家参考.具体如下: 此代码演示了如何读取和写入注册表 读取注册表: private string GetRegistShellData(string RegistName) { try { string registData, SubregistData; RegistryKey hkml = Registry.LocalMachine; RegistryKey software = hkml.OpenSubKey(@"SOFTWA

  • 如何在C#中使用注册表

    一.什么是注册表 注册表是Microsoft Windows操作系统和其应用程序中的一个重要的层次型数据库,用于存储系统和应用程序的设置信息.由键(key,或称"项").子键(subkey,子项)和值项(value)构成.一个键就是树状数据结构中的一个节点,而子键就是这个节点的子节点,子键也是键.一个值项则是一个键的一条属性,由名称(name).数据类型(datatype)以及数据(data)组成.一个键可以有一个或多个值,每个值的名称各不相同,如果一个值的名称为空,则该值为该键的默认

  • C#操作注册表的方法详解

    本文实例讲述了C#操作注册表的方法.分享给大家供大家参考,具体如下: 下面我们就来用.NET下托管语言C#注册表操作,主要内容包括:注册表项的创建,打开与删除.键值的创建(设置值.修改),读取和删除.判断注册表项是否存在.判断键值是否存在. 准备工作: 1. 要操作注册表,我们必须要引入必要的命名空间: 复制代码 代码如下: using Microsoft.Win32; 在这个命名空间里面包含了许多注册表相关的类,足够我们使用了~~ 2. 命名空间里面提供了一个类:RegistryKey 利用它

  • C#操作注册表之RegistryKey类

    表示 Windows 注册表中的项级节点. 此类是注册表封装. 继承层次结构 System.Object   System.MarshalByRefObject    Microsoft.Win32.RegistryKey 命名空间:Microsoft.Win32 程序集:mscorlib(在 mscorlib.dll 中) 属性 名称 说明 Handle 获取一个 SafeRegistryHandle 对象,该对象表示当前 RegistryKey 对象封装的注册表项. Name 检索项的名称.

  • C#操作注册表之Registry类

    提供表示 Windows 注册表中的根项的 RegistryKey 对象,并提供访问项/值对的 static 方法. 继承层次结构 System.Object   Microsoft.Win32.Registry 命名空间:  Microsoft.Win32 程序集:  mscorlib(在 mscorlib.dll 中) 方法 名称 说明 GetValue 检索与指定的注册表项中的指定名称关联的值. 如果在指定的项中未找到该名称,则返回您提供的默认值:或者,如果指定的项不存在,则返回 null

  • .NET5实现操作注册表的方法

    关于注册表 注册表是存储设备,用于提供有关应用程序.用户和默认系统设置的信息. 例如,应用程序可以使用注册表存储需要在应用程序关闭后保留的信息,并在重新加载应用程序时访问相同的信息. 例如,你可以存储颜色首选项.屏幕位置或窗口大小. 可以通过将信息存储在注册表中的不同位置来控制每个用户的此数据. 说明 C#中操作注册表,我们需要使用Registry类,提供表示 Windows 注册表中的根项的 RegistryKey 对象,并提供访问项/值对的 static 方法. 命名空间: Microsof

  • vb.net操作注册表的方法分析【增加,修改,删除,查询】

    本文实例讲述了vb.net操作注册表的方法.分享给大家供大家参考,具体如下: 增加: Dim key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("Software/Faxturer", True) Dim subkey As Microsoft.Win32.RegistryKey subkey = key.CreateSubKey("Manu")

  • 批处理操作注册表完全攻略(读取注册表/写入注册表等)

    一,批处理生成.Reg文件操作注册表 用批处理中的重定向符号可以轻松地生成.reg文件.然后用命令执行.reg文件即可! 这里,着重要了解.reg文件操作注册表的方法. 首先.reg文件首行必须是:Windows Registry Editor Version 5.00.然后才是操作注册表的内容. (就和从注册表中导出的文件格式一致) 1,创建子项 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\TTT] 在HK

  • Python模块 _winreg操作注册表

    用python操作修改windows注册表,显然要比用C或者C++简单. 主要参考资料:官方文档:https://docs.python.org/zh-cn/3/library/winreg.html 通过python操作注册表主要有两种方式,一种是通过python的内置模块 _winreg,另一种方式就是 Win32 Extension For Python的win32api模块.这里主要简单看看用内置模块 _winreg如何操作注册表. 1.读取 读取用的方法是OpenKey方法:打开特定的

  • 如何利用python操作注册表

    注册表是windows管理配置系统运行参数的一个核心数据库.在这个数据库里整合集成了全部系统和应用程序的初始化信息:其中包含了硬件设备的说明.相互关联的应用程序与文档文件.窗口显示方式.网络连接参数.甚至有关系到计算机安全的网络共享设置 . 1.读取 读取用的方法是OpenKey方法:打开特定的key winreg.OpenKey(key,sub_key,res=0,sam=KEY_READ) 例子:此例子是显示了本机网络配置的一些注册表项 import winreg key = winreg.

  • 从命令行快速操作注册表(图)

    每一个熟悉Windows的人都相信,通过注册表几乎可以做到任何事情,真正的问题是怎样迅速找到正确的注册键. 绝大多数情形下,操作注册表意味着找到某个特定的子键:偶尔地,可能需要修改一下子键的名称(例如,可能要进行结构上的改动).那么,怎样才能迅速找到正确的子键并执行修改?另外,如果你不仅要改动本地机器的注册表,而且还要对远程机器作同样的修改,该怎么办?本文告诉你一个好工具Regfind.Regfind可以从Windows 2000 Server的Resource Kit Supplement O

  • 用RegFind从命令行快速操作注册表

    每一个熟悉Windows的人都相信,通过注册表几乎可以做到任何事情,真正的问题是怎样迅速找到正确的注册键. 绝大多数情形下,操作注册表意味着找到某个特定的子键:偶尔地,可能需要修改一下子键的名称(例如,可能要进行结构上的改动).那么,怎样才能迅速找到正确的子键并执行修改?另外,如果你不仅要改动本地机器的注册表,而且还要对远程机器作同样的修改,该怎么办?本文告诉你一个好工具Regfind.Regfind可以从Windows 2000 Server的Resource Kit Supplement O

随机推荐