云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 注册表详解

注册表详解

  • 62 次阅读
  • 3 次下载
  • 2025/5/3 8:30:06

注册表详解

1. 注册表的定义:

PC机及其操作系统的一个特点就是允许用户按照自己的要求对计算机系统的硬件和软件进行各种各样的配置。早期的图形操作系统,如Win3.x中,对软硬件工作环境的配置是通过对扩展名为.ini的文件进行修改来完成的,但INI文件管理起来很不方便,因为每种设备或应用程序都得有自己的INI文件,并且在网络上难以实现远程访问。 为了克服上述这些问题,在Windows 95及其后继版本中,采用了一种叫做“注册表”的数据库来统一进行管理,将各种信息资源集中起来并存储各种配置信息。按照这一原则,Windows各版本中都采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表,用来管理应用程序和文件的关联、硬件设备说明、状态属性以及各种状态信息和数据等。

2. 注册表的文件:

注册表不是一个虚无的概念,在操作系统中,它最终要落实在某些具有”物理实在”意义的文件上.实际上,注册表的数据正是存储在某些特定文件中,在windows 9x中,他主要包含在windows目录下的system.bat和user.bat两个文件中(windows me还包含了classes.bat文件).这些文件无法进行直接编辑,读取和修改注册表文件中的配置信息,必须通过windows文件夹下的regedit.exe程序来进行,所以regedit.exe程序就被称为”注册表编辑器”

但在windows2000/xp/vista下的注册表文件,都被称作”配置单元”,所谓的配置单元,其实就是注册表中的一组项,子项,和值,所有的配置文件(除了HKEY_CURRENT_USER以外)都位于windows\\system32\\config\\文件夹中, HKEY_CURRENT_USER的配置文件位于windows\\profiles\%username\\文件夹中,其中最重要的个文件没有扩展名,他们分别是:DEFAULT,SAM,SECURITY,SOFTWARE,SYSTEM; .SAV后缀的文件为注册表的备份文件. .EVT文件为系统日志文件.

4. 注册表的结构:

注册表中的信息纷繁复杂,但是注册表对配置信息的组织结构确实层次分明的:打开注册表编辑器,左边窗格中的”我的电脑”下面显示的五大分支称为”预定义项”也就是我们常说的”根键”.”预定义项”代表了注册表一个主要部分的项.

五大预定义项各自包括若干”项”,”项”下面又包含众多的”子项”,”子项”下面又包含众多的”子项”子向右边的窗口里包含若干的”值项”,也就是我们常说的”键值”

注册表的结构如图

键值 键值 键值 项 项 项 项 预定义项 WINDOWS注册表 预定义项 预定义项 5. 注册表的数据类型:

注册表的值项包含多种不同的数据类型,WINDOWS XP的早期版本注册表只有三种键值的数据类型:字符串,二进制值和双字节值; windowsxp的晚期版本\\2003增加到5种; VISTA/WINDOWS7又增加了一个QDWORD(64位)类型,实际的数据类型还要多很多,知识系统不允许我们来创建.

*. 字符串值: 类型:REG_SZ

*. 二进制值: 类型:REG_BINARY *. DWORD值: 类型:REG_DWORD

*. 可扩展字符串值: 类型:REG_EXPAND_SZ *. 多字符串值: 类型:REG_MULTI_SZ

6. 注册表预定义项拆解:

注册表有五大预定义项,各自包含了不同的内容,同时彼此之间又有很大的紧密联系,了解五大预定义项包含的内容和其下面的主要项的功能,对于从整体上理解注册表的应用很有帮助.

一. HKEY_CLASSER_ROOT

Root预定义项包含了启动应用程序所需的全部信息,其中包括: 1. 所有扩展名以及应用程序和文档之间的关联信息.

2. 所有驱动程序的名称

3. 当做指针的字符串,指向他们代表的实际文件 4. 类标识CLSID

预定义项ROOT下面的项非常多,但是不要担心有多么的复杂.实际上,在这么多项中,大部分的项结构是一样的.

1. *项

这是HKEY_CLASSER_ROOT非常特殊的一项,*代表应用于所有文件类的定义,比如安装了WINRAR,后 所有文件的右键菜单都有”添加到压缩文件”与之关联,如果按一般的方法去与所有文件关联,那就太麻烦了,而*项就具有简单完成关联所有文件类型的功能,只要在此项下添加类定义信息,可应用于所有类型的文件.

2. 扩展名项(如.bat等)

HKEY_CLASSER_ROOT中最主要也是最多的想就是形如.bat .avi .bmp等扩展名项,以及它们所代表的batfile avifile bmpfile等类定义项,这两种项相互配合,完成对系统中所有文件扩展名的识别以及对此种扩展名文件的类型的定义(图标,用什么程序打开等).

3. 类定义项(batflie等)

类定义项的名称必须和扩展名相的默认值定义的相同.否则它们就会直接失去联系.也就无法完成对文件的关联定义了.

4. 类定义项下的Defaulticon子项(例如batflie\\Defaulticon):

该类文件图标的路径和文件名.

5. 类定义项下的shell\\open子项

OPEN子项用来描述关联程序的显示名称,比如右键的”打开””编辑”等默认值缺省时,系统会自动将其程序的名称信息显示为打开,为不是OPEN如果设置.OPEN 下面的子项是COMMAND子项,用来关联指定打开该类型文件软件的

路径.如果路径是长文件名(超过8个字符)则应该用””括起来,比如: “%SystemRoot%\\system32\\SoundRecorder.exe”

如果关联的程序在WINDOWS文件夹, windows\\SYSTEM32文件夹或者windows\\SYSTEM内的话,则省略其路径,如C:\\WINDOWS\\NOTEPAD.EXE在与文件关联的话可直接写成”NOTEPAD.EXE” 6. CLSID(类标识符)项:

在注册表中,经常会看到长串字符的子项和值,比:{00209FF-0000-00000-C000-xx-000000000046}它们都指向

HKEY_CLASSER_ROOT\\CLSID分支,既”类标识符”子项.

这些CLSID究竟有什么用,可以做个试验:在桌面上建立一个文件夹,命名为控制面板.{21EC3AE2020-A-1069-A2DD-08002B30309D},可以发现文件夹变成了控制面板的图标,双击可以打开控制面板,这就是CLSID的功能,

在WINDOWS中应用程序,控件,WINDOWS部件,编译器等几乎所有的项目都有他自己的CLSID, CLSID是某个不见于操作系统的连接,而且每一个程序的CLSID的值都是唯一的,,这样就可以保证此类文件的请求总是连接到改程序上面.

7. DIRECTORY, DRIVE, FOLDER项(文件夹项)

文件夹其实是一种特殊的文件对象,也需要关联程序才能对其操作,在

ROOT根键下,关于文件夹的项目有3个,在操作时很容易混淆,下面是各项分别代表的文件夹类型(以上三个子项一般不要改动,了解一下即可):

DIRECTORY: 仅作用于一般文件夹.(C:\\windows; D:\\穿越火线.等等) Drive: 仅作用于驱动器.(A: E:等)

Folder: 作用与所有文件夹(以上两种以及,回收站,我的电脑,控制面板这 样

的特殊文件夹)

以上三个项的结构和”类定义项”相同,我们可以为他们设置关联程序以及默认图标.

二. HKEY_CURRENT_USER

该预定义项包括了当前登录用户的配置信息,用户的文件夹,屏幕颜色和控制面

板的设置都存储在这里,这些信息与用户的配置文件相关联.

HKEY_CURRENT_USER(以下缩写为HKCU)包含如下主要的项:

1. HKCU\\Appevent项:

Appevent项及其子项定义了系统特定的时间的名称已经发生该事件时的声

音提示.

HKCU\\Appevent\\Schemes下有两个子项APP(系统附带声音方案的具体设置)

和NAMES(系统附带和用户自定义的声音方案)

2. HKCU\\console项:

定义了命令提示符(CMD窗口)的一些特征.

3. HKCU\\Control panel项:

里面配置的内容很多,全部是控制面板内的大部分设置,都保存在此项中,包括扶住功能选项,显示器,鼠标,屏保等信息.

4. HKCU\\Environment项:

系统以及其他用户的临时文件存放目录 5. HKCU\\EUDC项:

保存当前用户的字库用户使用造字程序所造的字库的位置信息保存在这个项的子项键值中.

6. HKCU\\Identities项: OUTLOOK配置信息. 7. HKCU\\KEYboard Layout项 系统键盘的布局信息 8.HKCU\\PRINTERS项: 打印机的配置信息

9.HKCU\\Sessioninformation项:

该项下面有一个”PROGRAMCOUNT”键值项,设置为0偶可以禁止所有登录用户运行的程序数量.

10.HKCU\\sofeware项:

包含了系统附带的各种软件以及安装在电脑中的其他软件的设置信息,都保存在这里,是应用最多的项之一.

三. HKEY_LOCAL_MACHINE:

该预定义项包含了特定于计算机的配置信息(用于任何用户),一下缩写为HKLM,

他有5个独立的项.

1. HKLM\\HARDWARE项:

其中包含了含有计算机硬件信息的子项,在每次重启系统时, HARDWARE项都将

被重新创建,这样就很容易向系统中添加新硬件了,用户对此项的修改没有任何的意义也不会生效. 2. HKLM\\SAM项:

这是一个关于安全账号管理的项,其中存储着用户信息和域的信息,无论哪种注册表,SAM中的信息都是不可访问的.

3. HKLM\\SECURITY项:

这里的信息与本地安全性和用户权限有关,其中也含有SAM项的备份,也是无法访问的.

4. HKLM\\SOFTWARE项:

包含了已经安装的系统软件和用户软件信息,也是注册表中最经常用到的项. 5. HKLM\\SYSTEM项:

包含了系统启动,设备驱动程序,服务,和WINDOWS配置有关的信息.

四. HKEY_USERS:

该项包含计算机上的所有以活动方式加载的用户配置文

件,HKEY_CURRENT_USERS其实也算是HKEY_USERS的一个子项.(一下缩写为HKU).

1. HKU\\.DEFAULT项:

此项的作用是未来将要创建的新用户将针对此项内的设置来生成新的配置文件,包括环境,屏幕,声音等多种信息.

2. HKU\\S-1-5-18等项:

分别代表系统内的各个账户或者安全组的信息. HKU\\S-1-3-0:对应ADMINISTRATORS账户

HKU\\S-1-5-18: 对应CREATOR OWNER账户(操作系统使用的服务账户) HKU\\S-1-5-19:对应当前登录到系统中的所有用户

HKU\\S-1-5-20:对应网络服务组(network和Network Service)

HKU\\S-1-5-21-XXXXXXXXXXXXXX-XXXXXXXX(根据每台电脑不同,数字也是随机的):对应当前正在使用的账户.

五. HKEY_CURRENT_Config

该预定义项包含有关本地计算机在系统启动时使用的硬件配置文件的信息.,若

果当前计算机中只有一个硬件配置,则其中的数据是和HKEY_LOCAL_MACHINE中一样.如果用户有建立新的硬件配置的话,则可以再这里反映出来.(一般用户使用中是不会有弟2个硬件配置的,故此项使用的很少).

搜索更多关于: 注册表详解 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

注册表详解 1. 注册表的定义: PC机及其操作系统的一个特点就是允许用户按照自己的要求对计算机系统的硬件和软件进行各种各样的配置。早期的图形操作系统,如Win3.x中,对软硬件工作环境的配置是通过对扩展名为.ini的文件进行修改来完成的,但INI文件管理起来很不方便,因为每种设备或应用程序都得有自己的INI文件,并且在网络上难以实现远程访问。 为了克服上述这些问题,在Windows 95及其后继版本中,采用了一种叫做“注册表”的数据库来统一进行管理,将各种信息资源集中起来并存储各种配置信息。按照这一原则,Windows各版本中都采用了将应用程序和计算机系统全部配置信息容纳在一起的注册表,用来管理应用程序和文件的关联、硬件设备说明、状态属性以及各种状态信息和数据等。 2. 注册表的文件

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com