当前位置:首页 > Windows程序 > 正文

C#注册表操作汇总

2021-05-24 Windows程序

标签:注册表操作   操作注册表   

一、注册表基本知识 1)       结构

     键->项->子项->值项(名称、类型、数据)

    REG_SZ         字符串

    REG_BINARY    二进制

    REG_DWORD    双字

 

2)       组成

1.HKEY_CLASSES_ROOT  定义了系统中所有文件类型标识和基本操作标识

   该主键包含文件扩展名和应用程序关联的信息

   主键下的子键决定如何在资源管理器和桌面中显示该类文件及其图标

   不是一个单独的分支,而只是HKEY_LOCAL_MACHINE\SOFTWARE\Classes的一个映射

 

2.HKEY_CURRENT_USER  当前用户的配置信息,包括环境变量、桌面设置、网络    

   连接、软件运行信息等

 

3.HKEY_LOCAL_MACHINE 本机相关的系统信息,包括硬件信息、驱动信息、内存

   数据、总线数据等

  其中的信息与特定用户无关,可供所有用户使用。

 

4.HKEY_USER 所有用户的信息

  该子键下保存了改用户的桌面设置、背景位图、应用程序快捷键、字体等信息。而这些信息都可以通过控制面板等工具设定。应用程序也不直接访问该主键,而是通过HKEY_CURRENT_USER主键进行访问。

5.HKEY_CURRENT_CONFIG 本地计算机启动时的配置的相关信息。如环境信息、

桌面主题、背景色之类

     也只是HKEY_LOCAL_MACHINE\CONFIG结构中的一个映射。

3)       C#操作注册表 <span style="font-size:14px;">Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Software\\\\MapWinGISConfig",false); Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.CurrentUser.CreateSubKey("Software\\\\MapWinGISConfig");</span>

 

二、使用注册表 l    在“资源管理器右键/新建”和“桌面右键菜单/新建”中添加新建自己的文件类型。

  该示例使用代码表示:

            //设置右键

            RegistryKeykey1 = Registry.ClassesRoot.CreateSubKey(".acc");

            key1.SetValue("", "acc");

            RegistryKeykey2 = key1.CreateSubKey("ShellNew");

            key2.SetValue("NullFile", "");

            key1.Close();

            key2.Close();

            //设置关联后缀名

            key1 = Registry.ClassesRoot.CreateSubKey("acc");

            key1.SetValue("", "accfile");

            key2 = key1.CreateSubKey("DefaultIcon");

            key2.SetValue("", "c:\\acc.ico");  //c:\\Windows\\notepad.exe,1

            key2.Close();

            key2 = key1.CreateSubKey("shell\\open\\command");

            key2.SetValue("", "c:\\windows\\notepad.exe");

 

Tip: .acc的子键ShellNew就代表创建一个右键新建菜单,而ShellNew下面的值NullFile代表空文件。

HKEY_CLASSES_ROOT\.zip\ShellNew值

     FileName d:\Program Files\HaoZip\ZipNew.data 代表什么呢?

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/70149.html