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

 更新时间:2022年03月31日 14:56:09   作者:猿长大人  
本文主要介绍了C# 操作Windows注册表的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本文将给出操作注册表的C#代码以及开发中遇到的问题。

代码示例

通过RegistryKey类的OpenBaseKey方法获取注册表根节点。

public static RegistryKey OpenBaseKey(RegistryHive hKey, RegistryView view)

在这里插入图片描述

示例一:禁用 Windows 7 系统自动更新

// win7自动更新设置的注册表路径
string path = @"SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate";

// 获取注册表中win7自动更新设置的节点(32位系统改为 RegistryView.Registry32)
using (var rklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64)) 
{
	using (var rkUpdate = rklm.OpenSubKey(path, true))
	{
		// 添加值(禁止为1,允许为0)
		rkUpdate.SetValue("DisableOSUpgrade", 1, RegistryValueKind.DWord);
	}
}

示例二:禁用 Windows 10 提醒

// win10提醒设置的注册表路径
string path = @"SOFTWARE\Policies\Microsoft\Windows\Gwx";

// 获取注册表中win10提醒设置的节点(32位系统改为 RegistryView.Registry32)
using (var rklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64)) 
{
	using (var rkNotify = rklm.OpenSubKey(path, true))
	{
		// 添加值(禁止为1,允许为0)
		rkNotify.SetValue("DisableGwx", 1, RegistryValueKind.DWord);
	}
}

常见问题

问题描述:无法通过OpenSubKey方法获取到注册表节点(通过路径获取到的值为null)。
解决方法:请检查操作系统是32位还是64位,使用OpenBaseKey方法要根据操作系统版本传入对应参数

  • RegistryView.Registry32
  • RegistryView.Registry64

到此这篇关于C# 操作Windows注册表的实现方法的文章就介绍到这了,更多相关C# 操作Windows注册表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • c#图片缩放图片剪切功能实现(等比缩放)

    c#图片缩放图片剪切功能实现(等比缩放)

    c#图片缩放剪切功能实现,代码中包含了c#图片处理的一些基础知识,与大家分享
    2013-12-12
  • C#使用HttpHelper框架重启路由器

    C#使用HttpHelper框架重启路由器

    这篇文章介绍了C#使用HttpHelper框架重启路由器的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#中单例模式的三种写法示例

    C#中单例模式的三种写法示例

    这篇文章主要介绍了C#中单例模式的三种写法示例,本文分别给出代码实例,需要的朋友可以参考下
    2015-06-06
  • C#数据结构与算法揭秘三 链表

    C#数据结构与算法揭秘三 链表

    这节我们讨论链表的基本操作,并且画图以证明,下届中我们将讨论双向链表,环形链表 应用举例
    2012-11-11
  • C#预定义数据类型之值类型和引用类型介绍

    C#预定义数据类型之值类型和引用类型介绍

    这篇文章主要介绍了C#预定义数据类型之值类型和引用类型介绍,本文着重讲解了引用类型中的object(对象)类型和string(字符串)类型,需要的朋友可以参考下
    2015-03-03
  • C#获取真实IP地址实现方法

    C#获取真实IP地址实现方法

    这篇文章主要介绍了C#获取真实IP地址实现方法,对比了C#获取IP地址的常用方法并实例展示了C#获取真实IP地址的方法,非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • c#调用api控制windows关机示例(可以重启/注销)

    c#调用api控制windows关机示例(可以重启/注销)

    本文介绍了c#控制windows关机、重启、注销的二种方法,分为调用windows自带的shutdown.exe关机和调用API关机的方法
    2014-01-01
  • C#通过windows注册表获取软件清单的方法

    C#通过windows注册表获取软件清单的方法

    这篇文章主要介绍了C#通过windows注册表获取软件清单的方法,涉及C#针对注册表的访问读取与遍历操作技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-07-07
  • Unity键盘WASD实现物体移动

    Unity键盘WASD实现物体移动

    这篇文章主要为大家详细介绍了Unity键盘WASD实现物体移动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • C#如何访问共享文件夹或者磁盘

    C#如何访问共享文件夹或者磁盘

    这篇文章主要为大家详细介绍了C#访问共享文件夹或者磁盘,需要用户名密码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05

最新评论