【1】注册表是什么?
         百度百科 https://baike.baidu.com/item/%E6%B3%A8%E5%86%8C%E8%A1%A8/101856?fr=aladdin

【2】怎么打开注册表?
         Windows+R >>>>>> regedit

【3】C# 源码 

       

 /// <summary>
/// 注册表 CURD
/// 在LocalMachine 目录文件下
/// </summary>
public class RegeditUtils
{
/// <summary>
/// 注册信息节点是否存在
/// </summary>
/// <param name="key">"SOFTWARE\\Microsoft"格式</param>
/// <returns></returns>
public static bool IsExsits(string key)
{
var indicator = true;
if (Registry.LocalMachine.OpenSubKey(key) == null)
{
indicator = false;
}
return indicator;
}
/// <summary>
/// 创建注册信息
/// </summary>
/// <param name="key">"SOFTWARE\\Microsoft"格式</param>
public static void Create(string key)
{
Registry.LocalMachine.CreateSubKey(key);
}
/// <summary>
/// 更新注册表字段值
/// </summary>
/// <param name="rsg">传入注册表节点</param>
/// <param name="name">节点内字段名称</param>
/// <param name="value">需要设置的值</param>
public static void Update(RegistryKey rsg,string name,string value)
{
if (rsg!=null)
{
if (!string.IsNullOrEmpty(name))
{
rsg.SetValue(name, value); //写入
}
rsg.Close(); //关闭
}
}
/// <summary>
/// 获取注册表节点实体
/// </summary>
/// <param name="key">"SOFTWARE\\Microsoft"格式</param>
/// <returns></returns>
public static RegistryKey Read(string key)
{
RegistryKey rsg = Registry.LocalMachine.OpenSubKey(key, true);
return rsg;
} /// <summary>
/// 获取注册表节点实体内某个属性的值
/// </summary>
/// <param name="key">"SOFTWARE\\Microsoft"格式</param>
/// <param name="prop">传入属性的键值</param>
/// <returns></returns>
public static string ReadPropValue(string key,string prop)
{
var res = "";
RegistryKey rsg = Registry.LocalMachine.OpenSubKey(key, true);
if (rsg!=null)
{
var obj = rsg.GetValue(prop);
if (obj!=null)
{
res = obj.ToString();
}
}
return res;
}
/// <summary>
/// 删除注册表节点
///
/// </summary>
/// <param name="key">"SOFTWARE\\Microsoft"格式</param>
public static void Delete(string key)
{
if (IsExsits(key))
{
Registry.LocalMachine.DeleteSubKey(key);
}
} /// <summary>
/// 创建注册表节点,并对相应字段赋值
/// </summary>
/// <param name="key">节点</param>
/// <param name="name">属性名称</param>
/// <param name="value">值</param>
public static void CreateRegedit(string key, string name, string value)
{
try
{ //判断当前节点是否存在
if (!IsExsits(key))
{
//不存在该节点,创建节点
Create(key);
}
//获取该节点
var rsg = Read(key);
//该节点字段属性赋值
Update(rsg, name, value);
}
catch (Exception ex)
{
Log.Error(ex);
} }
}

此博文为原创,转载请注明出处!!!!!

C#实现注册表 LocalMachine 目录下CURD工具类的更多相关文章

  1. hdwiki model目录下的函数类

    model目录下的函数类    actions.class.php(站内地图相关) getHTML:获得页面菜单和相关信息 getMap:生成站内地图 adv.class.php 对wiki_adve ...

  2. 【Unity3D】Unity3D之 注册表动态存取游戏存档——PlayerPrefs类

    [Unity3D]Unity3D之 注册表动态存取游戏存档--PlayerPrefs类 1.Unity3D提供了一个用于本地持久化保存与读取的类--PlayerPrefs.工作原理非常简单,以键值对的 ...

  3. python- 动态加载目录下所有的类

    # 背景 自动化测试框架中model层下有很多类,用来操作mysql的,使用的时候需要把全部的类加载进来,需要使用到动态加载类 # 解决方法 使用pkgutil,内置的方法,常用的话有两个方法 ite ...

  4. jdk1.6中bin目录下的工具及其作用

    jdk的javaw.javac等的介绍java:在msdos终端窗口中执行.class文件,即解释执行.class文件.通常所说的jvm解释权.javaw:在java自己的窗口中执行.class文件而 ...

  5. java中jre\bin目录和jdk\bin目录下的工具功能介绍

    转自:https://blog.csdn.net/eclipse_yin/article/details/51051096 jre/bin目录下面工具说明 javac:Java编译器,将Java源代码 ...

  6. BASH如何获得某个目录下的某类文件的文件名

    假设某个目录下有一堆以jpeg为后缀的文件名,我们需要在另一个目录中获得他们的文件名,并输出. 可以联合使用ls,awk,sed等命令来完成. 方法一: 使用ls列出目录下以.jpeg为结尾的文件,然 ...

  7. JDK的bin目录下各种工具的使用说明_对不起自己,这么久没写博,抱歉

    appletviewer.exe(小程序浏览器):一种执行HTML文件上的Java小程序类的Java浏览器 apt.exe:SolarisTM 操作系统和 Linux上用于处理注释的工具 extche ...

  8. Android SDK中 tools 目录下的工具介绍

    Android SDK包含了各种各样的定制工具,简介如下: Android模拟器(Android Emulator )它是在你的计算机上运行的一个虚拟移动设备.你可以使用模拟器来在一个实际的Andro ...

  9. 文件/目录部分处理工具类 DealDir.java

    package com.util; import java.io.File; import java.util.StringTokenizer; /** * 文件/目录 部分处理 * @createT ...

随机推荐

  1. 机器学习类别不平衡处理之欠采样(undersampling)

    类别不平衡就是指分类任务中不同类别的训练样例数目差别很大的情况 常用的做法有三种,分别是1.欠采样, 2.过采样, 3.阈值移动 由于这几天做的project的target为正值的概率不到4%,且数据 ...

  2. solr+jieba结巴分词

    为什么选择结巴分词 分词效率高 词料库构建时使用的是jieba (python) 结巴分词Java版本 下载 git clone https://github.com/huaban/jieba-ana ...

  3. python+appium 查找某个元素find_element()并click()点击,正向判断与反判断的方法封装

    使用场景: 在自动化测试过程中,难免会用到反判断,包括异常情况的处理,比如:find_element_by_name('测试') 判断"测试"是否存在,存在则点击,不存在则执行其他 ...

  4. spring,springMVC中常用注解

    一,使用注解: 在spring的配置文件applicationContext.xml中,加入注解扫描.配置项就配置了对指定的包进行扫描,以实现依赖注入. <?xml version=" ...

  5. IOT高性能服务器实现之路

    市场动态 物联网市场在2018年第一季度/第二季度出现了意想不到的加速,并将使用的物联网设备总数提升至7B.这是IoT Analytics最新“ 物联网和短期展望状态 ”更新中的众多发现之一. 全面的 ...

  6. TCP报文解析

    概述 在<网络基础总结(一)>总结了TCP建立连接和断开连接的流程,然而TCP协议远比我所了解的复杂得多,我所知的可以说就冰山一角,所总结的也只是纸上谈兵,仅仅只能对TCP有个肤浅的认识, ...

  7. 微软正式发布Chromium Edge开发预览版

    目录 下载与注册 更多下载信息与订阅 导入Chrome部分数据 扩展安装 安装开发预览版是否会与Win10自带的Edge冲突? 一大早从朋友圈看到消息,微软正式发布Chromium Edge 开发预览 ...

  8. 请给你的短信验证码接口加上SSL双向验证

    序言 去年年底闲来几天,有位同事专门在网上找一些注册型的app和网站,研究其短信接口是否安全,半天下来找到30来家,一些短信接口由于分析难度原因,没有继续深入,但差不多挖掘到20来个,可以肆意被调用, ...

  9. 解决Google Play审核中的WebViewClient.onReceivedSslError问题

    Google Play应用市场提交应用审核,出现因WebViewClient.onReceivedSslError问题导致拒绝通过. Google Paly给出的详情地址:support.google ...

  10. Data Lake Analytics的Geospatial分析函数

    0. 简介 为满足部分客户在云上做Geometry数据的分析需求,阿里云Data Lake Analytics(以下简称:DLA)支持多种格式的地理空间数据处理函数,符合Open Geospatial ...