注册表是Windows的核心文件,数据库。
你能够在起头菜单中的运行中输入“Regedit”就能够翻开了。
它记录了Windows中的硬件与软件信息,十分重要。
撑持天才
起头--运行--输入 regedit
什么是注册表?Win95为什么会引入那一特殊数据记录体例?注册表和INI文件比拟,到底有何差别?我们该若何有针对性地对其停止修改?带着那些问题,我们聘请何宗琦副传授写下了该文。
什么是注册表?
PC机及其操做系统的一个特点就是允许用户根据本身的要求对计算机系统的硬件和软件停止灵敏设置装备摆设。
在Windows3。x中,对软硬件工做情况灵敏设置装备摆设的特点次要表示在接纳了后缀为“INI”的文件来登录硬件和软件的各类初始化信息,以便系统成立契合要求的工做情况。因为每一个设备或者应用法式都能够成立本身的INI文件,所以形成INI文件浩瀚,为INI文件的办理增加了难度。
出格是因为那些设置装备摆设文件的存储都接纳局域化体例,因而要在收集上实现长途拜候几乎是不成能的。
为了克制上述问题,就必需成立一个同一办理各类信息资本的机构来集中存储各类设置装备摆设信息,根据那一原则,在Win95中接纳了注册表体例。所谓注册表现实上是一个庞大的数据库,此中包容了应用法式和计算机系统的全数设置装备摆设信息、Win95系统和应用法式的初始化信息、应用法式和文档文件的联系关系关系、硬件设备的申明、形态和属性以及各类形态信息和数据。
从一般用户的角度看,注册表系统由两个部门构成:注册表数据库和注册表编纂器。此中注册表数据库包罗两个文件:SYSTEM。DAT和USER。DAT。
SYSTEM。DAT是用来保留微机的系统信息,如安拆的硬件和设备驱动法式的有关信息等。
那个文件,必需放在Win95子目次下。
USER。DAT是用来保留每个用户特有的信息,如桌面设置、墙纸或窗口的颜色设置等。那个文件能够放在Win95子目次下,也能够放在收集磁盘上。
SYSTEM。DAT的自备份文件为SYSTEM。
DA0,USER。DAT的自备份文件为USER。DA0。
注册表编纂器则用来对注册表停止各类编纂工做。
注册表和INI文件有何差别?
为了连结系统的向下兼容性,Win95中保留了。INI文件。在形式上,注册表与INI文件有两个显著的特点:
1。
注册表接纳的是二进造形式登录数据,INI文件接纳的则是简单的文本形式登录数据;
2。注册表撑持子关键字,各级子关键字都有本身的“键值”,INI文件中则撑持节以及节中的参数。
在功用上,注册表与。INI文件比拟,次要有以下三个特点:
1。
注册表允许对硬件、某些操做系统参数、应用法式和设备驱动法式停止跟踪设置装备摆设,那使得某些设置装备摆设的改动能够在不从头启动系统的情况下立即生效。
2。注册表中登录的硬件部门数据能够用来撑持Win95的即插即用特征。当Win95检测到机器上的各类设备时,就把有关数据保留到注册表中。
凡是是在安拆时停止那种检测的,但Win95启动或原有设置装备摆设改动时,也要停止检测。如安拆一个新的硬件时,Win95将查抄注册表,以便确定哪些资本已被占用,如许就能够制止新设备与原有设备之间的资本抵触。
3。通过注册表,办理人员和用户能够在收集上查抄系统的设置装备摆设和设置,使得长途办理得以实现。
预定义关键字
注册表接纳“关键字”及其“键值”来描述登录项及其数据。所有的关键字都是以“HKEY”做为前缀开头。现实上,关键字是一个句柄。那种约定使得应用法式开发人员能够在利用注册表API时把它用于法式之中。为此,Win95供给了若干API函数,以便在开发Win95应用法式时添加、修改、查询和删除注册表的登录项。
关键字能够分为两类:一类是由系统定义的,凡是称为“预定义关键字”;另一类是由应用法式定义的,安拆的应用软件差别,其登录项也就差别。
翻开注册表编纂器(Regedit。exe),就能够看到关键字。
下面我们对上图中系统预定义的六个主关键字停止总的介绍。
HKEY_CLASSES_ROOT
该主关键字包罗了有关的OLE信息,以便在系统工做过程中实现对各类文件和文档信息的拜候。详细的内容有已经注册的文件扩展名、文件类型、文件图标等。
HKEY_USERS
PC用户都能够在那里设置本身的关键字和子关键字。
按照当前登录的用户差别,那个关键字又能够指向差别的分收部门。那个分收部门将映射到HKEY_CURRENT_USER关键字中。用户按照小我喜好设置的诸如桌面、布景、起头菜单法式项、应用法式快速键、显示字体、屏幕节电设置等信息均能够在那个关键字中找到。
本关键字中的大部门设置都能够通过控造面板来修改。若是用户登录到系统中的信息,没有预定义的登录项,则接纳本关键字下面的“Default”子关键字(如图2) 。
HKEY_CURRENT_USER
HKEY_CURRENT_USER是一个指向HKEY_USERS构造中某个分收的指针,它包罗当前用户的登录信息。
现实上它就是HKEY_USERS\Default下面的一部门内容,若是在HKEY_USERS\Default下面没有用户登录的其它内容,那么那两个主关键字包罗的内容是完全不异的。
HKEY_LOCAL_MACHINE
该关键字包罗了当地计算机(相对收集情况而言)的硬件和软件的全数信息。
当系统的设置装备摆设和设置发作变革时,本关键字下面的登录项也将随之改动。
HKEY_CURRENT_CONFIG
那个关键字现实上也是指向HKEY_LOCAL _MACHINE\Config构造中的某个分收的指针。HKEY_CURRENT_CONFIG下面的子关键字及内容与HKEY_LOCAL _MACHINE\Config\0001分收下面的子关键字及内容是完全不异的。
本关键字包罗的次要内容是计算机的当前设置装备摆设情况,如显示器、打印机等可选外部设备及其设置信息等,并且那个设置装备摆设信息均将按照当前毗连的收集类型、硬件设置装备摆设以及应用软件的安拆差别而有所变革。
HKEY_DYN_DATA
望文生义,本关键字包罗了系统运行中的动态数据-即已发作的事务的有关信息。
因而那个关键字的内容不只包罗系统硬件的当前形态,也包罗了那些需要更新和检索的数据。那些数据都是动态变革的,它们老是最新的信息。WIN95每次启动时都将从头成立那个关键字。为了进步工做速度,HKEY_DYN_DATA现实上是存放在内存(RAM)中的,因而若是发作了关于注册表内容的修改,则没必要立即写入磁盘。
那关于进步系统的速度是非常需要的(未完待续)。
