C# 注册表 操作实现代码

yizhihongxing

C# 中操作注册表的方法非常简单,以下是一些基本的操作实现代码:

读取注册表

using Microsoft.Win32;

// 打开要读取的注册表键
RegistryKey regKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");

// 读取键值
string keyVal = (string)regKey.GetValue("TestKey");

// 关闭注册表键
regKey.Close();

以上代码会打开当前用户下的“SOFTWARE\Microsoft\Windows\CurrentVersion\Run”键,并读取名为“TestKey”的键值。如果该键不存在,keyVal 的值将为 null。

写入注册表

using Microsoft.Win32;

// 打开要写入的注册表键
RegistryKey regKey = Registry.CurrentUser.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");

// 写入键值
regKey.SetValue("TestKey", "C:\\Test.exe");

// 关闭注册表键
regKey.Close();

以上代码会打开当前用户下的“SOFTWARE\Microsoft\Windows\CurrentVersion\Run”键,并写入名为“TestKey”的键值,值为“C:\Test.exe”。如果键已经存在,则会被覆盖。

删除注册表

using Microsoft.Win32;

// 打开要删除的注册表键
RegistryKey regKey = Registry.CurrentUser.CreateSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");

// 删除键值
regKey.DeleteValue("TestKey");

// 关闭注册表键
regKey.Close();

以上代码会打开当前用户下的“SOFTWARE\Microsoft\Windows\CurrentVersion\Run”键,并删除名为“TestKey”的键值。如果键不存在,此操作会被忽略。

示例1:创建一个注册表项并写入一个键值

using Microsoft.Win32;

// 创建一个名为 "MyApp" 的注册表项
RegistryKey regKey = Registry.CurrentUser.CreateSubKey("SOFTWARE\\MyApp");

// 写入键值
regKey.SetValue("TestKey", "Hello World");

// 关闭注册表项
regKey.Close();

以上代码会创建一个名为“MyApp”的注册表项,并在该项下写入名为“TestKey”的键值,值为“Hello World”。

示例2:读取当前用户的登录项

using Microsoft.Win32;

// 打开当前用户下的登录项注册表键
RegistryKey regKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run");

// 读取该键下的所有键值的名称
string[] valueNames = regKey.GetValueNames();

// 遍历所有键值,输出名称和值
foreach (string valueName in valueNames)
{
    Console.WriteLine("{0} = {1}", valueName, regKey.GetValue(valueName));
}

// 关闭注册表项
regKey.Close();

以上代码会打开当前用户下的“SOFTWARE\Microsoft\Windows\CurrentVersion\Run”键,并读取该键下的所有键值的名称和值,最后输出到控制台。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 注册表 操作实现代码 - Python技术站

(0)
上一篇 2023年6月6日
下一篇 2023年6月6日

相关文章

  • C#关键字async/await用法

    下面是”C#关键字async/await用法”的完整攻略。 标题 C#关键字async/await用法 介绍 async/await是C# 5.0版本中新增的关键字,用于简化异步编程的过程。当我们需要在.NET应用程序中执行耗时操作时,通常会遇到线程阻塞、死锁、竞争和上下文问题等问题。使用async/await可以很好地解决这些问题,使得代码更易于编写和理解…

    C# 2023年6月6日
    00
  • C#服务器NFS共享文件夹搭建与上传图片文件的实现

    下面是“C#服务器NFS共享文件夹搭建与上传图片文件的实现”的完整攻略。 搭建NFS服务器 安装NFS服务器软件 在Linux系统上搭建NFS服务器,首先需要安装NFS服务器软件。可以使用以下命令安装: sudo apt-get install nfs-kernel-server 创建NFS共享目录 在Linux系统上,需要创建一个目录作为NFS共享目录。可…

    C# 2023年6月1日
    00
  • C#生成比较短的Token字符串

    当我们开发Web应用程序的时候,经常需要使用Token字符串来保证数据安全性,如身份验证、跨域访问等。但是由于Token字符串的长度比较长,可能会占用过多的空间和带宽资源,因此我们需要生成比较短的Token字符串。下面我给出一些实现方法和示例。 方法一:使用C#中的Base64编码 Base64编码是一种常用的编码方式,可以将任意二进制数据编码成只包含64个…

    C# 2023年6月7日
    00
  • 在.NetCore中 DDD中基于mediatr实现领域事件并结合EFCore进行二次封装

    [源代码地址https://github.com/junkai-li/NetCoreKevin]基于NET6搭建跨平台WebApi架构支持单点登录、多缓存、自动任务、分布式、多租户、日志、授权和鉴权 、网关 注册与发现、CAP集成事件、领域事件、 docker部署 **首要要理解什么是领域事件?**领域事件是指发生在特定领域中的事件,是你希望在同一个领域中其…

    C# 2023年5月9日
    00
  • HttpWebRequest实现下载图片至本地

    下面我来详细讲解如何用 HttpWebRequest 实现下载图片至本地: 1. HttpWebRequest 简介 HttpWebRequest 是 .NET Framework 提供的一个类,用于创建 HTTP 请求并与 Web 服务器进行通信。使用 HttpWebRequest 可以发送 GET、POST 和其他 HTTP 请求,在本例中,我们将使用 …

    C# 2023年5月31日
    00
  • C#中把日志导出到txt文本的简单实例

    C#中把日志导出到txt文本的简单实例,可以分为以下几步: 1. 引入System.IO命名空间 首先,在程序的顶部引入System.IO命名空间,即: using System.IO; 2. 创建txt文件,并写入日志内容 接着,在程序中创建txt文件,并将日志内容写入该文件中。下面是一个示例: string logFilePath = @"D:…

    C# 2023年6月1日
    00
  • C#中using关键字的使用方法示例

    下面我将为您详细讲解“C#中using关键字的使用方法示例”的完整攻略。 1. using关键字的基本语法 在C#中,using关键字通常用于释放对象的资源,以确保程序的高效性和安全性。它的基本语法如下: using (resource) { // 对象资源的使用代码块 } 其中,resource表示需要释放的对象资源。对象资源通常是一些需要手动释放的资源对…

    C# 2023年5月31日
    00
  • 详解ASP.NET Core高性能服务器HTTP.SYS

    详解ASP.NET Core高性能服务器HTTP.SYS攻略 在ASP.NET Core应用程序中,HTTP.SYS是一种高性能的服务器,可用于处理HTTP请求。本攻略将介绍如何在ASP.NET Core应用程序中使用HTTP.SYS服务器。 步骤 以下是使用HTTP.SYS服务器的步骤: 安装HTTP.SYS服务器。 在Windows操作系统中,HTTP.…

    C# 2023年5月17日
    00
合作推广
合作推广
分享本页
返回顶部