Microsoft Windows 注册表

windows的注册表有什么用?
10#Windows注册表的那些事儿

一、了解注册表

1.1 注册表的用途

注册表实质是一个庞大的数据库。里面存放了计算机硬件的全部配置信息、系统和应用软件的初始化信息等。

1.2 注册表的打开方式

win+R 打开运行,执行regeditrededt32均可打开注册表。
或按下win键,直接搜索注册表。

1.3 官方文档

适用于高级用户的 Windows 注册表信息
Microsoft 使用注册表清理实用程序的支持策略

二、注册表的结构

2.1 注册表编辑器的外观

2.2 注册表的五大主键

  • HKEY_CLASSES_ROOT
  • HKEY_CURRENT_USER
  • HKEY_LOCAL_MACHINE
  • HKEY_USERS
  • HKEY_CURRENT_CONFIG

2.3 各主键的作用

主键 说明
HKEY_CURRENT_USER 包含当前登录的用户的配置信息的根。
用户的文件夹、屏幕颜色和 "控制面板" 设置存储在此处。
此信息与用户的配置文件相关联。 此密钥有时缩写为 HKCU。
HKEY_USERS 包含计算机上所有主动加载的用户配置文件。
HKEY_CURRENT_USER 是 HKEY_USERS 的子项。
HKEY_USERS 有时缩写为 HKU。
HKEY_LOCAL_MACHINE 包含特定于计算机 (任何用户) 的配置信息。
此密钥有时缩写为 HKLM。
HKEY_CLASSES_ROOT 子项 HKEY_LOCAL_MACHINE\Software 。
存储在此处的信息可确保在使用 Windows 资源管理器打开文件时,会打开正确的程序。
此注册表项有时缩写为 HKCR。
从 Windows 2000 开始,此信息存储在 "HKEY_LOCAL_MACHINE" 和 "HKEY_CURRENT_USER" 键下。
此 HKEY_LOCAL_MACHINE\Software\Classes 项包含可应用于本地计算机上的所有用户的默认设置。
此 HKEY_CURRENT_USER\Software\Classes 项包含的设置可替代默认设置,并且仅适用于交互式用户。 HKEY_CLASSES_ROOT 键提供了将来自这两个源的信息合并在一起的注册表视图。
HKEY_CLASSES_ROOT 还为为早期版本的 Windows 设计的程序提供此合并视图。
若要更改交互式用户的设置,必须在 HKEY_CURRENT_USER\Software\Classes HKEY_CLASSES_ROOT (而不是在下进行更改)。
若要更改默认设置,必须在下进行更改 HKEY_LOCAL_MACHINE\Software\Classes 。
如果您将键写入 HKEY_CLASSES_ROOT 下的某个项,系统会将该信息存储在下 HKEY_LOCAL_MACHINE\Software\Classes 。
如果您将值写入 HKEY_CLASSES_ROOT 下的某个键,并且该注册表项已存在 HKEY_CURRENT_USER\Software\Classes ,则系统将在其中存储信息,而不是在下存储 HKEY_LOCAL_MACHINE\Software\Classes 。
HKEY_CURRENT_CONFIG 包含有关本地计算机在系统启动时使用的硬件配置文件的信息。

2.4 键值说明

名称 数据类型 说明
二进制值 REG_BINARY 原始二进制数据。 大多数硬件组件信息都存储为二进制数据,并以十六进制格式显示在注册表编辑器中。
DWORD 值 REG_DWORD 由4个字节长 (32 位整数) 的数字所表示的数据。 许多设备驱动程序和服务参数是此类型,以二进制、十六进制或十进制格式显示在注册表编辑器中。 相关值是 DWORD_LITTLE_ENDIAN (最低有效字节是最低的地址) ,REG_DWORD_BIG_ENDIAN (最小有效字节是最高地址) 。
可扩展的字符串值 REG_EXPAND_SZ 可变长度的数据字符串。 此数据类型包括在程序或服务使用数据时解析的变量。
多字符串值 REG_MULTI_SZ 一个多字符串。 包含用户可以读取的表单中的列表或多个值的值通常是此类型。 项由空格、逗号或其他标记分隔开。
字符串值 REG_SZ 固定长度的文本字符串。
二进制值 REG_RESOURCE_LIST 一系列嵌套的数组,用于存储硬件设备驱动程序或它控制的某个物理设备使用的资源列表。 此数据由系统在 \ResourceMap 树中进行检测和写入,并在注册表编辑器中以十六进制格式显示为二进制值。
二进制值 REG_RESOURCE_REQUIREMENTS_LIST 一系列嵌套的数组,用于存储驱动程序或它控制的某个物理设备可以使用的设备驱动程序的可能的硬件资源的列表。 系统在 \ResourceMap 树中写入此列表的子集。 此数据由系统检测并以十六进制格式显示在注册表编辑器中,作为二进制值。
二进制值 REG_FULL_RESOURCE_DESCRIPTOR 一系列嵌套的数组,用于存储由物理硬件设备使用的资源列表。 此数据由系统在 \HardwareDescription 树中进行检测和写入,并在注册表编辑器中以十六进制格式显示为二进制值。
REG_NONE 没有任何特定类型的数据。 此数据由系统或应用程序写入注册表,并作为二进制值以十六进制格式显示在注册表编辑器中。
链接 REG_LINK 一个用于命名符号链接的 Unicode 字符串。
QWORD 值 REG_QWORD 由64位整数的数字表示的数据。 此数据以二进制值的形式显示在注册表编辑器中,并在 Windows 2000 中引入。
posted @   那个白熊  阅读(644)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示