深入 WIN2000 注册表 (1)

2024-03-21 08:18
文章标签 深入 注册表 win2000

本文主要是介绍深入 WIN2000 注册表 (1),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

                                           2000注册表的结构
因为注册表非常庞大,而且必须快速访问以避免降低系统性能,所以Windows 2000注册表中的信息以二进制格式保存,而不像Windows 3.x的I N I文件或者M S - D O S系统文件那样以文本格式保存。为了使从庞大的数据库中获取某一指定信息的时间最少,数据库的组织结构更像是硬盘上的文件系统。
Windows 2000注册表分为四层,而且呈层叠式的结构:
• 配置单元:有五个系统定义的配置单元,它们名称的第一部分是: H K E Y _。

• 项:分为用户定义的项和系统定义的项。这些项没有特殊的命名约定,它们以主
HKEY_ 配置单元的子目录形式存在。项和子项没有附带数据—它们只负责组织对数
据的访问。
• 子项:分为用户定义的子项和系统定义的子项。这些子项没有特殊的命名约定,它们是作为用户定义或者系统定义的项的子目录形式存在的。项和子项没有相关的数据—它们只是用来组织对数据的访问(注意,某些文档不区分项和子项)。

• 值:这些元素位于结构链的末端,就像是文件系统中的文件一样。它们包含着计算机及其应用程序执行时使用的实际数据。它们可分为小而有效的几种数据类型,本章稍后将对其进行介绍。
现在,让我们来看一下每个配置单元所包含的信息,以及它们如何同Windows 2000相互作用。
1. HKEY_LOCAL_MACHINE
H K E Y _ L O C A L _ M A C H I N E ( H K L M )是包含操作系统及硬件相关信息(例如计算机总线类型,系统可用内存,当前装载了哪些设备驱动程序以及启动控制数据等)的配置单元。实际上,H K L M保存着注册表中的大部分信息,因为另外四个配置单元都是其子项的别名。提示配置单元通常简写为H K加上它们以下划线分隔的单词的首字母。

2. HKEY_CURRENT_USER
H K E Y _ C U R R E N T _ U S E R ( H K C U )配置单元包含着当前登录到由这个注册表服务的计算机上的用户的配置文件。其子项包含着环境变量、个人程序组、桌面设置、网络连接、打印机和应用程序首选项(环境变量在Windows 2000中被用来允许脚本、注册表条目,以及其它应用程序使用通配符来代替可能会发生改变的重要的系统信息)。这些信息是HKEY_USERS 配置单元当前登录用户的Security ID(SID)子项的映射。
3. HKEY_CLASSES_ROOT
H K E Y _ C L A S S E S _ R O O T ( H K C R )配置单元包含的子项列出了当前已在计算机上注册的所有C O M服务器和与应用程序相关联的所有文件扩展名。这些信息是H K E Y _ L O C A L _M A C H I N E / S O F T WA R E / C l a s s e s子项的映射。
4. HKEY_USERS
H K E Y _ U S E R S ( H K U )配置单元包含的子项含有当前计算机上所有的用户配置文件。其中一个子项总是映射为H K E Y _ C U R R E N T _ U S E R (通过用户的S I D值)。另一个子项H K E Y _U S E R S / D E FA U LT包含用户登录前使用的信息。
5. HKEY_CURRENT_CONFIG
H K E Y _ C U R R E N T _ C O N F I G ( H K C C )配置单元包含的子项列出了计算机当前会话的所有硬件配置信息。硬件配置文件出现于Windows NT版本4,它允许你选择在机器某个指定的会话中支持哪些设备驱动程序。这些信息是H K E Y _ L O C A L _ M A C H I N E / S Y S T E M / C u r r e n t C o n t r o l S e t子
项的映射。

    因为注册表是一个小型关系数据库,所以从逻辑上就需要有一个能定义其组织结构的模式。除了上面介绍的之外,这个结构还应该提供有限的数据类型集以便包含注册表值。
Windows 2000注册表条目共有11种可识别的数据类型,表1 - 1提供了其名称和功能。
每一种原始数据格式类型(名称分别为D Wo r d、二进制、字符串、多重字符串) ,在
R e g e d t 3 2 . e x e中都有一个专门的编辑器。这些编辑器将在直接解决方案(Immediate Solutions)
部分介绍。

Windows 2000注册表可识别的数据类型 数据类型原始数据类型功能
R E G _ N O N E       未知加密数据
R E G _ S Z               字符串文本字符
R E G _ E X PA N D _ S Z  字符串带有变量的文本
R E G _ B I N A RY  二进制二进制数据
R E G _ D W O R D  数值数值数据
R E G _ D W O R D _ B I G _ E N D I A N  数值非I n t e l数值
R E G _ L I N K     字符串文件路径
R E G _ M U LT I _ S Z     多重字符串字符串数组
R E G _ F U L L _ R E S O U R C E _ D E S C R I P TO R 字符串硬件资源I D
R E G _ R E S O U R C E _ R E Q U I R E M E N T S _ L I S T 字符串硬件资源I D

 

待续



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=5731


这篇关于深入 WIN2000 注册表 (1)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/832186

相关文章

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

一文带你深入了解Python中的GeneratorExit异常处理

《一文带你深入了解Python中的GeneratorExit异常处理》GeneratorExit是Python内置的异常,当生成器或协程被强制关闭时,Python解释器会向其发送这个异常,下面我们来看... 目录GeneratorExit:协程世界的死亡通知书什么是GeneratorExit实际中的问题案例

深入解析Spring TransactionTemplate 高级用法(示例代码)

《深入解析SpringTransactionTemplate高级用法(示例代码)》TransactionTemplate是Spring框架中一个强大的工具,它允许开发者以编程方式控制事务,通过... 目录1. TransactionTemplate 的核心概念2. 核心接口和类3. TransactionT

深入理解Apache Airflow 调度器(最新推荐)

《深入理解ApacheAirflow调度器(最新推荐)》ApacheAirflow调度器是数据管道管理系统的关键组件,负责编排dag中任务的执行,通过理解调度器的角色和工作方式,正确配置调度器,并... 目录什么是Airflow 调度器?Airflow 调度器工作机制配置Airflow调度器调优及优化建议最

深入理解C语言的void*

《深入理解C语言的void*》本文主要介绍了C语言的void*,包括它的任意性、编译器对void*的类型检查以及需要显式类型转换的规则,具有一定的参考价值,感兴趣的可以了解一下... 目录一、void* 的类型任意性二、编译器对 void* 的类型检查三、需要显式类型转换占用的字节四、总结一、void* 的

深入理解Redis大key的危害及解决方案

《深入理解Redis大key的危害及解决方案》本文主要介绍了深入理解Redis大key的危害及解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一、背景二、什么是大key三、大key评价标准四、大key 产生的原因与场景五、大key影响与危

深入理解C++ 空类大小

《深入理解C++空类大小》本文主要介绍了C++空类大小,规定空类大小为1字节,主要是为了保证对象的唯一性和可区分性,满足数组元素地址连续的要求,下面就来了解一下... 目录1. 保证对象的唯一性和可区分性2. 满足数组元素地址连续的要求3. 与C++的对象模型和内存管理机制相适配查看类对象内存在C++中,规

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

【C++高阶】C++类型转换全攻略:深入理解并高效应用

📝个人主页🌹:Eternity._ ⏩收录专栏⏪:C++ “ 登神长阶 ” 🤡往期回顾🤡:C++ 智能指针 🌹🌹期待您的关注 🌹🌹 ❀C++的类型转换 📒1. C语言中的类型转换📚2. C++强制类型转换⛰️static_cast🌞reinterpret_cast⭐const_cast🍁dynamic_cast 📜3. C++强制类型转换的原因📝