欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

.NET5实现操作注册表的方法

时间:2022-12-01 10:56:26|栏目:.NET代码|点击:

关于注册表

注册表是存储设备,用于提供有关应用程序、用户和默认系统设置的信息。 例如,应用程序可以使用注册表存储需要在应用程序关闭后保留的信息,并在重新加载应用程序时访问相同的信息。 例如,你可以存储颜色首选项、屏幕位置或窗口大小。 可以通过将信息存储在注册表中的不同位置来控制每个用户的此数据。

说明

C#中操作注册表,我们需要使用Registry类,提供表示 Windows 注册表中的根项的 RegistryKey 对象,并提供访问项/值对的 static 方法。

命名空间: Microsoft.Win32

程序集: Microsoft.Win32.Registry.dll

public static class Registry

在.Net Framework x.应用当中,我们只需要添加Microsoft.Win32即可。

using Microsoft.Win32;

namespace ConsoleApp3
{
    class Program
    {
        static void Main(string[] args)
        {
            //在存储有关用户首选项的信息下面创建了一个子项TestKey
            RegistryKey testKey = Registry.CurrentUser.CreateSubKey("TestKey");
        }
    }
}

而在.NET 5当中,该功能不再默认提供,需要单独在NuGet安装,如下所示:

关于Registry类的使用范围如下:

RegistryKey

RegistryKey 表示 Windows 注册表中的项级节点。Registry 静态类中提供了多种公开RegistryKey。

字段

  • CurrentUser 存储有关用户首选项的信息。
  • LocalMachine 存储本地计算机的配置信息。
  • ClassesRoot 存储有关类型 (和类) 及其属性的信息。
  • Users 存储有关默认用户配置的信息。
  • PerformanceData 存储软件组件的性能信息。
  • CurrentConfig 存储非用户特定的硬件信息。
  • DynData 存储动态数据。

方法

Registry类还包含 static GetValue SetValue 用于设置和检索注册表项中的值的方法。 这些方法在每次使用注册表项时都将其打开和关闭,因此 RegistryKey 当你访问大量值时,它们不会在类中执行和类似的方法。

创建/读取/删除 注册表键

using Microsoft.Win32;

namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个TestKey注册表键值
            RegistryKey testKey = Registry.CurrentUser.CreateSubKey("TestKey");

            //创建子项
            var nameKey = testKey.CreateSubKey("Name");

            //创建键值
            nameKey.SetValue("Id", 123);
            nameKey.SetValue("Language", "China");


            //读取子项当中的值
            var readKey = testKey.OpenSubKey("Name");

            //idString=123
            var idString = readKey.GetValue("Id").ToString();

            //删除子项
            testKey.DeleteSubKey("Name");
        }
    }
}

效果

打开Windows注册表编辑器, 会发现上一步创建的注册表项,会在指定的顶级节点当中

上一篇:C#基于NPOI操作Excel

栏    目:.NET代码

下一篇:MAUI项目中使用SnackBar与Toast通知功能

本文标题:.NET5实现操作注册表的方法

本文地址:http://www.codeinn.net/misctech/220311.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有