什么是注册表子项及其工作原理?

Windows注册表是Windows操作系统的大脑,包含所有的细节,或者在技术方面,它是一个分层数据库,存储运行应用程序和命令所需的配置设置和选项。但是,Windows注册表实际上是动态的,仅在Windows运行时才存在。
由于其嵌套模式,注册表类似于Windows资源管理器之类的子树。有五个“Hives”或主要注册表项,包含一组键,子键和值,其中包含一组包含其数据备份的支持文件。根据操作系统版本,可能会显示四到六个“Hives”或主要注册表项(d)。每个都根据Win32 API中定义的句柄(Handle Key = HK)命名,用于管理设置:

  1. HKEY_LOCAL_MACHINE - 在这五个子键中保存硬件和软件信息(d):
    • 硬件(c)
    • SAM(安全客户管理器)(c)
    • 安全(c)
    • 软件
    • 系统
  2. HKEY_CURRENT_CONFIG - 保存当前正在使用的硬件信息,并允许向后兼容旧应用程序和设备驱动程序。无法编辑。
  3. HKEY_CLASSES_ROOT - 包含文件扩展名关联,以帮助Windows识别特定的文件类型。
  4. HKEY_CURRENT_USER - 保存特定于登录用户的个人资料信息。无法编辑。
  5. HKEY_Users - 保存默认配置文件(当前用户)以及之前登录过计算机的用户的所有配置文件。
  6. HKEY_PERFORMANCE_DATA (a) - 为NT内核本身或提供性能数据的其他程序提供的性能数据提供运行时信息。
  7. HKEY_DYN_DATA (b) - 包含有关即插即用设备的动态信息。这里的数据是动态的,这意味着它会不断变化并在运行中创建。每次启动时都会重写此密钥,因此它是虚拟的,不会在配置单元中显示(隐藏)。

(a)仅在基于NT的Windows版本中,但在Windows注册表编辑器中不可见。不存储在任何配置单元中,虽然它在注册表编辑器中不可见,但它通过Windows API中的注册表功能可见。
(b)仅在Windows 9x / Me中,并在Windows注册表编辑器中可见
(c)无法修改属于注册表项“HKEY_LOCAL_MACHINE”的前3个子项(硬件,SAM和安全性)。
(d)第六和第七个子键(组件和BCD)是Windows Vista及更高版本所独有的,并由内核按需映射。

注册表键或配置单元使用反斜杠语法来表示层次结构级别,就像Windows的路径名一样。例如:HKEY_Local_Machine \ Software \ Classes。子键具有不区分大小写的强制名称和非空字符串,该名称不能在名称中包含反斜杠。

例如:

HKEY_LOCAL_MACHINE \ Software =“软件”的子项
HKEY_LOCAL_MACHINE \ Software \ Microsoft ='Microsoft“软件和子项的子项
HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows =子键“Windows”的子键“Microsoft”的子键“Software”的HKEY_LOCAL_MACHINE根键。

子键和注册表值都包含支持COM功能所需的应用程序信息,即. 支持的数据格式,程序标识符,兼容性信息,DCOM和控件。由于注册表项可能会影响Windows操作系统(也称为白名单区域)的性能,因此在进行任何编辑或更改之前,应始终更新备份文件。使用错误的编辑工具或发生错误可能会导致Windows操作系统无法启动并让您面对蓝屏。

正在加载...