在用C#进行Winform开发的时候,会涉及对注册表的操作。

主要用到Registry、RegistryKey类,在Microsoft.Win32命名空间下。

Regisgtry对象包含注册表常用5个键的管理,根据静态属性获得各键的RegistryKey对象,通过RegistryKey对象进行键值的增删查操作。

Registry.ClassesRoot、Registry.CurrentUser、Registry.LocalMachine

Registry.Users、Registry.CurrentConfig,分别对应如下5个键值

RegisgtryKey类提供了增删改的静态方法。

读信息,提供重载方式,增加权限的控制。Registry.LocalMachine.OpenSubKey()

增信息,如果存在就是修改。Regisgtry.LocalMachine.CreateSubKey()

删信息,在进行删除的时候如果键下面包含子键,需要逐层删除。Registry.LocalMachine.DeleteSubKey()

递归删除注册表的方法 

 1 private void Delete(string regPath, RegistryKey reg)
 2         {
 3             if (reg.OpenSubKey(regPath) == null)
 4                 return;
 5             if (reg.OpenSubKey(regPath).GetSubKeyNames().Length > 0)
 6             {
 7
 8                 foreach (string s in reg.OpenSubKey(regPath).GetSubKeyNames())
 9                 {
10                     Delete(s, reg.OpenSubKey(regPath, true));
11                 }
12                 reg.DeleteSubKey(regPath);
13             }
14             else
15             {
16                 reg.DeleteSubKey(regPath);
17             }
18         }

View Code

  

转载于:https://www.cnblogs.com/jingsha/p/5118865.html

注册表的基本操作(.Net)相关推荐

  1. C#操作注册表增删改查及关机能保存问题

    为何用程序写入注册表后,重启机器注册表项就彻底丢失呢 仔细看看RegCreateKeyEx的用法 其中的dwOptions使用:REG_OPTION_NON_VOLATILE 而不是:REG_OPTI ...

  2. Windows注册表内容详解(转载)

    前提 一.什么是注册表 注册表是windows操作系统.硬件设备以及客户应用程序得以正常运行和保存设置的核心"数据库",也可以说是一个非常巨大的树状分层结构的数据库系统. 注册表记 ...

  3. (windows注册表大全)别人写的,我记录下

    一.什么是注册表 注册表是2000/XP操作系统.硬件设备以及客户应用程序得以正常运行和保存设置的核心"数据库",也可以说是一个非常巨大的树状分层结构的数据库系统.         ...

  4. 记录Windows 的一些基础知识(包括基础命令,文件系统,注册表项)

    Windows基础命令 ## windows输入命令```powershell win+R 打开cmd 右键管理员运行 目录和文件操作 目录分为相对路径和绝对路径 相对路径(以当前为起点) " ...

  5. C#操作注册表(通俗易懂、详尽)

    一.白话注册表 要访问注册表,可以使用Microsoft.Win32命名空间中的两个类Registry 和RegistryKey.RegistryKey实例表示一个注册表项,这个类的方法可以浏览子键. ...

  6. 【15】Vue:02-Vue表单基本操作、表单修饰符、自定义指令、计算属性computed、侦听器watch、过滤器、生命周期、数组变异方法、替换数组、动态数组响应数据、图书列表案例、TODOS案例

    文章目录 day02 Vue常用特性 表单基本操作 表单修饰符 自定义指令 Vue.directive 注册全局指令 Vue.directive 注册全局指令 带参数 自定义指令局部指令 计算属性 c ...

  7. MFC注册表CRegKey

    注册表是由windows维护的一个小数据库.里面也会保存windows本身的很多配置信息. 有时程序中要存些设置信息,一个方法就是创建一些普通的txt或xml文件,然后保存进去就行了.另一办法就是保存 ...

  8. 注册表关闭命令提示符_如何从命令提示符下编辑Windows注册表

    注册表关闭命令提示符 Windows and a lot of third-party apps store settings in the registry. If you're wanting t ...

  9. [Python黑帽] 一.获取Windows主机信息、注册表、U盘历史痕迹和回收站文件

    最近开始学习网络安全和系统安全,接触到了很多新术语.新方法和新工具,作为一名初学者,感觉安全领域涉及的知识好广.好杂,但同时也非常有意思.这系列文章是作者学习安全过程中的总结和探索,我们一起去躺过那些 ...

  10. UNICODE_STRING、全局句柄表、文件、注册表、LIST_ENTRY、HASH、TREE、LookAside

    本公众号分享的所有技术仅用于学习交流,请勿用于其他非法活动,如有错漏,欢迎留言交流指正 内核基本操作,数据结构 内核的基本操作 UNICODE_STRING 为什么字符串很重要 大型工程中10%~20 ...

最新文章

  1. Java HotSpot VM 命令行参数【官方版】
  2. 网站添加到IIS和附件进程调试(新手使用篇)
  3. .NET Core 3.0 即将结束生命周期,建议迁移 3.1
  4. HTML DOM教程 19-HTML DOM Button 对象
  5. 为ASP.NET控件加入快捷菜单
  6. 强迫症设计师最爱的对称构图,促销模板
  7. [Android]Handler的消息机制
  8. [USACO4.1]麦香牛块Beef McNuggets By cellur925
  9. mysql中floor函数的作用是什么?
  10. linux scp命令参数及用法详解--linux远程复制拷贝命令使用实例【转】
  11. Python基础——timeit模块
  12. 探索WebKit内核(一)------ 菜鸟起步
  13. 将Python对象转换成字典
  14. 计算机5800计算道路标高程序,强大的高速公路坐标高程计算软件
  15. NC65 凭证辅助核算项目查询
  16. 由随机数生成器到宿命论
  17. android图片花,Android中使用Canvas绘制南丁格尔玫瑰图(Nightingale rose diagram)
  18. cortex m3 开源_开源增强现实耳机,Steam的125M有效帐户等
  19. SSMS证书已被颁发者吊销解决办法
  20. linux中nginx安装前置条件以及安装流程,非常简单

热门文章

  1. 再谈如何以最简单的方法将泛型为String类型的集合或String类型的数组转化为逗号间隔字符串形式
  2. 时间操作(Java版)—获取给定时间与当前系统时间的差值(以毫秒为单位)
  3. js实现页面滚动,菜单固定
  4. ElasticSearch学习(三):配置与集群
  5. Visual Studio 远程调试设置
  6. 康普顿效应是弹性碰撞吗_弹性填料用于洗涤塔
  7. mangodb和php比较,php-mongodb从不同的数据库中选择
  8. C# 子类实例化基类 基类使用不了子类的方法_C#委托事件机制:事件的完整声明,触发和事件的本质(6)...
  9. (day 47 - 位运算 ) 剑指 Offer 65. 不用加减乘除做加法
  10. 设置linux中docker中的mysql开机自动启动