注册表(C#)
Windowa注册表是包含Windows安装,用户喜好以及以安装软件和设备的所有配置信息的核心储存库。COM组件必须把它的信息出存在注册表中,才能被客户程序使用。注册表也包含了一些系统配置的信息,这些信息根据操作系统的不同而不同。注册表中的所有信息都是分类保存的,“主键”是各个大的信息分类名称,注册表中的所有信息均被分类存放在相应的主键中。一般包括5个主键:HKEY_CLASSES_ROOT(保存在系统中注册的各类文件的控制名以及文件关联等信息),HKEY_CURRENT_USER(保存登陆到系统的当前用户的计算机的环境变量,桌面设置,应用程序设置,个人程序设置,网络连接等信息),HKEY_LOCAL_MACHINE(保存计算机的硬件,软件及操作系统的配置信息),HKEY_USERS(保存计算机所有用户的配置信息),HKEY_CURRENT_CONFIG(存放计算机当前的硬件配置信息,此主键实际上是HKEY_LOCAL_MACHINE中的一部分)。
操作注册表之前要导入命名空间:using Microsoft.Win32
Registry类是其中的一个常用类,有7个字段:ClassRoot、CurrentConfig、CurrentUser、DynData、LacalMachine、Performanceata、Users
Registry类是通过静态的只读字段来提供RegistryKey实例的
如:RegistryKey rk=Registry.LacalMachine;
1.)用OpenSubKey方法打开注册表
private void Form1_Load(object sender, EventArgs e)
{
this.Box.Items.Clear();
//创建RegistryKey实例
RegistryKey rk = Registry.CurrentUser;
//使用OpenSubKey方法打开HKEY_CURRENT_USER\Software项下的所有子项
RegistryKey a = rk.OpenSubKey(@"Software");
foreach(string str in a.GetSubKeyNames())
{
this.Box.Items.Add("子项名:" + str);
RegistryKey b = a.OpenSubKey(str);
foreach(string c in b.GetValueNames())
{
this.Box.Items.Add(c + b.GetValue(c));
}
}
}
2.)创建及修改注册表信息
//创建RegistryKey实例
RegistryKey rk = Registry.CurrentUser;
//使用OpenSubKey方法打开HKEY_CURRENT_USER\Software项
RegistryKey a = rk.OpenSubKey("Software", true);
RegistryKey b = a.CreateSubKey("111");
b.SetValue("1", "2");
//修改注册表
b.SetValue("1", "3");
通常情况下,只允许在本机修改注册表,而不允许远程修改注册表
3.)删除注册表中信息
(1)DeleteSubKey方法:删除不包含任何子项的子项
(2)DeleteSubKeyTree方法:彻底删除指定的子项目录,包括该子项以及其以下的全部子项(谨慎使用)
(3)DeleteValue方法:删除指定的键值对
注册表(C#)的更多相关文章
- Win.ini和注册表的读取写入
最近在做打包的工作,应用程序的配置信息可以放在注册表文件中,但是在以前的16位操作系统下,配置信息放在Win.ini文件中.下面介绍一下Win.ini文件的读写方法和注册表的编程. 先介绍下Win.i ...
- 卸载oracle之后,如何清除注册表
之前卸载了oracle,今天偶然间发现,在服务和应用程序里面,还残存着之前的oracle服务.原来,还需要去清理下注册表. 在开始菜单的这个框里面 输入regedit,进入注册表.找到这个目录 HKE ...
- 利用注册表在右键添加VS15的快捷方式打开文件夹
1.简介 最近安装VS15 Preview 5,本版本可以打开"文件夹" 是否可以向Visual Studio Code一样在文件夹或文件右键菜单添加"Open with ...
- 修改策略组/注册表 屏蔽Win10升级解决方法
一.Windows非家庭版 第1步:按Win+R键调出运行对话框,输入命令“gpedit.msc”,按回车键启动组策略编辑器. 第2步:依次定位到“计算机配置→管理模板→Windows组件→Windo ...
- Windows 7安装软件时无法将注册值写入注册表的处理方法
1. 我们来确认一下,有没有安装什么软件把注册表给封了.如杀毒软件,防火墙等.把这些软件关了之后,再安装软件试试:如果不行,就把杀毒软件卸载了,再安装软件试试. 2. 更改组策略设置 步骤: 开始-运 ...
- MFC操作注册表
1.创建和修改注册表 BOOL CTestToolCtr::GetHkey(CString strHkey, HKEY& hkey) { == strHkey.CompareNoCase(_T ...
- Win 通过修改注册表把CapsLock映射为Rshift
成品: REGEDIT4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancod ...
- js通过注册表找到本地软件安装路径并且执行
场景:用js执行本地的安装软件,如果不存在就执行安装 操作步骤: 1.前台js代码 <script type="text/javascript"> function e ...
- 修改注册表 去除Windows快捷方式图标小箭头
一些朋友不喜欢Windows系统中快捷方式图标上面的小箭头,下面介绍如何修改注册表去除快捷方式图标上的小箭头. 1.开始->运行->输入regedit,启动注册表编辑器,然后; 2.依次展 ...
- 弥补学生时代的遗憾~C#注册表情缘
记得当时刚接触C#的时候,喜欢编写各种小软件,而注册表系列和网络系列被当时的我认为大牛的必备技能.直到我研究注册表前一天我都感觉他是那么的高深. 今天正好有空,于是就研究了下注册表系列的操作,也随手封 ...
随机推荐
- canvas初探2
2.2 canvas的绘图环境 canvas仅仅只是一个绘图的容器,其内存在一个绘图环境,该环境对象提供了全部的绘图功能. 目前canvas的绘图环境是2d,但canvas规范在着手准备支持其他类型的 ...
- 嵌入式的重要平台 .NET Micro Framework
曾经辉煌的巨人PC界渐渐走向下坡路,而智能手机圈则没完没了般地争个你死我活.随着智能手机的广泛普及,不少商家为了不坐以待毙而纷纷开始涉足与穿戴式设备--智能手表(具体参见智能手表时代还有多远). 我们 ...
- 剑指Offer面试题:17.树的子结构
一.题目:树的子结构 题目:输入两棵二叉树A和B,判断B是不是A的子结构.例如下图中的两棵二叉树,由于A中有一部分子树的结构和B是一样的,因此B是A的子结构. 该二叉树的节点定义如下,这里使用C#语言 ...
- 30分钟全面解析-SQL事务+隔离级别+阻塞+死锁
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...
- 迷你MVVM框架avalon在兼容旧式IE做的努力
很多时候,写代码就像砌砖头,只要我们不关心盖楼的原因.建筑的原理.土木工程基础和工程经验,就算我们砌了100栋高楼,我们也就只是一个砌砖工人,永远也成为不了一个工程师,更别说建筑师了.而那些包工头也只 ...
- Node.js学习笔记
相关介绍 1.Node.js或者Node,是一个可以让javascript运行在服务器端的平台. 2.Node.js是一个为实时Web应用开发而诞生的语言,它从诞生之初就充分考虑了再实时响应.超大规模 ...
- IOS SWIFT 启动流程学习
其实和我们java.c一样通过一个main函数作为入口. main封装在了UIApplicationMain里面.所以后者变成启动入口. 他会扫描Info.plist,找到需要加载的入口storybo ...
- [ASP.NET MVC 大牛之路]01 - 开篇
匆匆2014,转眼就到末尾了.在这一年,你还有哪事情些想做而没有做? 2014年在我身上发生了两件意义重大的事,一是正月初一宝宝出生,我升级成为了爸爸:二是进入了一家创业公司,成为了技术负责人. 去年 ...
- Dash文档制作教程
前言 什么是Dash 面向程序员的文档库(Mac) 代码片段管理工具 这是强烈推荐给每天在各种API文档中摸爬滚打的程序员们的神器. 为什么要自己制作文档 官方的源中没有相关文档 文档在离线下体验更好 ...
- 【玩转单片机系列002】 如何使用STM32提供的DSP库进行FFT
前些日子,因为需要在STM32F103系列处理器上,对采集的音频信号进行FFT,所以花了一些时间来研究如何高效并精确的在STM32F103系列处理器上实现FFT.在网上找了很多这方面的资料做实验并进行 ...