什么是注册表?
注册表因为它复杂的构造和没有任何联络的CLSID键使得它可能看上去很奥秘。不幸的是,微软并没有完全公开讲述关于注册表准确设置的撑持信息,如许使得注册表看上去更不成揣摩。处置和编纂注册表好像“黑色艺术”一样,它在系统中的设置让用户觉得象在暗中中试探一样找不到觉得。
如许,因为用户对那方面的缺乏领会使得注册表更多的呈现毛病。
Windows注册表是帮忙Windows控造硬件、软件、用户情况和Windows界面的一套数据文件,注册表包罗在Windows目次下两个文件system。dat和user。dat里,还有它们的备份system。
da0和user。da0。通过Windows目次下的regedit。exe法式能够存取注册表数据库。在以前,在windows的更早版本(在win95以前),那些功用是靠 i, i和其他和应用法式有联系关系的。ini文件来实现的。
在windows操做系统家族中, i和 i那两个文件包罗了操做系统所有的控造功用和应用法式的信息, i办理计算机硬件而 i办理桌面和应用法式。
所有驱动、字体、设置和参数会保留在。ini文件中,任何新法式城市被记录在。ini文件中。那些记录会在法式代码中被引用。因为受 i和 i文件大小的限造,法式员添加辅助的。INI文件以用来控造更多的应用法式。举例来说,微软的Excel有一个 i文件,它包罗着选项、设置、缺省参数和其他关系到Excel运行一般的信息。
在 i和 i中只需要指出 i的途径和文件名即可。
最起头, i和 i控造着所有windows和应用法式的特征和存取办法,它在少数的用户和少数应用法式的情况中工做的很好。跟着应用法式的数量和复杂性越来越大,则需要在。ini文件中添加更多的参数项。
如许下来,在一个变革的情况中,在应用法式安拆到系统中后,每小我城市更改。ini文件。然而,没有一小我在删除应用法式后删除。ini文件中的相关设置,所以 i和 i那个两个文件会变的越来越大。每增加的内容会招致系统性能越来越慢。并且每次应用法式的晋级都呈现如许的难题:晋级会增加更多的参数项但是历来不去掉旧的设置。
并且还有一个明显的问题,一个。ini文件的更大尺寸是64KB。为领会决那个问题,软件商本身起头撑持本身的。ini文件,然后指向特定的ini文件如 i和 i文件。如许下来多个。ini文件影响了系统一般的存取级别设置。若是一个应用法式的。ini文件和WIN。
INI文件设置起抵触,事实是谁的优先级更高呢?
注册表最后被设想为一个应用法式的数据文件相关参考文件,最初扩展成关于32位操做系统和应用法式包罗了所有功用下的东东。注册表是一套控造操做系统外表和若何响应外来事务工做的文件。那些“事务”的范畴从间接存取一个硬件设备到接口若何响应特定用户到应用法式若何运行等等。
注册表因为它的目标和性量变的很复杂,它被设想为专门为32位应用法式工做,文件的大小被限造在大约40MB。
注册表都做些什么?
注册表是为Windows NT和Windows95中所有32位硬件/驱动和32位应用法式设想的数据文件。16位驱动在Winnt下无法工做,所以所有设备都通过注册表来控造,一般那些是通过BIOS来控造的。
在Win95下,16位驱动会继续以实形式体例设备工做,它们利用 i来控造。16位应用法式会工做在NT或者Win95 下,它们的法式仍然会参考 i和 i文件获得信息和控造。
在没有注册表的情况下,操做系统不会获得必需的信息来运行和控造从属的设备和应用法式及准确响应用户的输入。
在系统中注册表是一个记录32位驱动的设置和位置的数据库。当操做系统需要存取硬件设备,它利用驱动法式,以至设备是一个BIOS撑持的设备。无BIOS撑持设备安拆时必需需要驱动,那个驱动是独立于操做系统的,但是操做系统需要晓得从哪里找到它们,文件名、版本号、其他设置和信息,没有注册表对设备的记录,它们就不克不及被利用。
当一个用户筹办运行一个应用法式,注册表供给应用法式信息给操做系统,如许应用法式能够被找到,准确数据文件的位置被规定,其他设置也都能够被利用。
注册表保留关于缺省数据和辅助文件的位置信息、菜单、按钮条、窗口形态和其他可选项。它同样也保留了安拆信息(好比说日期),安拆软件的用户,软件版本号和日期,序列号等。
按照安拆软件的差别,它包罗的信息也差别。
然而,一般来说,注册表控造所有32位应用法式和驱动,控造的办法是基于用户和计算机的,而不依赖于应用法式或驱动,每个注册表的参数项控造了一个用户的功用或者计算机功用。用户功用可能包罗了桌面外不雅和用户目次。
所以,计算机功用和安拆的硬件和软件有关,对所以用户来说项都是公用的。
有些法式功用对用户有影响,有些时感化于计算机而不是为小我设置的,同样的,驱动可能是用户指定的,但在良多时候,它们在计算机中是通用的。
注册表控造用户形式的例子有:
控造面板功用;
桌面外不雅和图标;
收集参数;
阅读器功用性和特征;
那些功用中的某些是和用户无关的,有些是针对用户的。
计算机相关控造项基于计算机名,和登岸用户无关。控造类型的例子是安拆一个应用法式,不论是哪个用户,法式的可用性和存取是稳定的,然而,运行法式图标依赖于收集上登岸的用户。收集协议可用性和优先权基于计算机,但是当前毗连和用户信息相关。
那里是在注册表中基与计算机控造条目标一些例子:
存取控造;
登岸确认;
文件和打印机共享;
网卡设置和协议;
系统性能和虚拟内存设置;
没有了注册表,Win95和Winnt 就不太可能存在。
它们其实太复杂了,以致于用过去的。ini文件无法控造,它们的扩展才能需要几乎无限造的安拆和利用应用法式,注册表实现了它。然而,注册表比。ini文件更复杂,理解它若何工做,它做什么和若何用它来做是有效办理系统的关键。
在系统中注册表控造所有32位应用法式和它们的功用及多个应用法式的交互,好比复造和粘贴,它也控造所有的硬件和驱动法式。
固然大都能够通过控造面板来安拆和设置,理解注册表仍是做Winnt和Win95系统办理根本常识。
二、注册表的构造
注册表的构造
注册表是Windows法式员建造的一个复杂的信息数据库,它是多条理式的。在差别系统上注册表的根本构造不异。
此中的复杂数据会在差别体例上连系,从而产生出一个绝对独一的注册表。
计算机设置装备摆设和缺省用户设置的注册表数据在Winnt中被保留鄙人面那五个文件中:
DEFAULT,SAM,SECURITY,SOFTWARE,SYSTEM,NTUSER。
DAT。
Win95中所有系统注册信息保留在windows目次下的SYSTEM。DAT文件里。所有硬件设置和软件信息也保留在那个文件。它要比NT注册表文件简单的多,因为那里其实不需要更多的控造。Win95被设想为一个收集的客户或者零丁工做的系统,所以用户控造或者平安级别和NT纷歧样。
那使得Win95注册表工做比NT更容易,所以那个文件也比力小。
Win95用户的注册数据一般被保留在windows目次下的user。dat里。若是你在控造面板|密码|用户设置装备摆设文件中创建并利用多于一个用户的设置装备摆设文件,每个用户就会有在\WINDOWS\Profiles\username\USER。
DAT下它本身的user。dat文件。在启动时,系统将记录你的登岸,从你目次中的设置装备摆设文件(USER。DAT信息)将被拆入,以用来连结你本身的桌面和图标。
控造键
在注册表编纂器中注册表项是用控造键来显示或者编纂的。控造键使得找到和编纂信息项组更容易。
因而,注册表利用那些条目。下面是六个控造键
HKEY_LOCAL_MACHINE
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_DYN_DATA
HKEY_USERS
HKEY_CURRENT_USER
Winnt和Win95的注册表其实不兼容。
从Win95向Winnt晋级需要你从头安拆32位应用法式,从头在桌面上创建图标,并从头成立用户情况。
通过控造键能够比力容易编纂注册表。固然它们显示和编纂好象独立的键,其实HKEY_CLASSES_ROOT 和HKEY_CURRENT_CONFIG是 HKEY_LOCAL_MACHINE的一部门。
HKEY_CURRENT_USER是HKEY_USERS的一部门。
HKEY_LOCAL_MACHINE包罗了HKEY_CLASSES_ROOT和HKEY_CURRENT_CONFIG的所有内容。每次计算机启动时,HKEY_CURRENT_CONFIG和HKEY_CLASSES_ROOT的信息被映射用以查看和编纂。
HKEY_CLASSES_ROOT其实就是HKEY_LOCAL_MACHINE\SOFTWARE\Classes,但是在HKEY_CLASSES_ROOT窗编纂相对来说显得更容易和有层次。
HKEY_USERS保留着缺省用户信息和当前登岸用户信息。
当一个域成员计算机启动而且一个用户登岸,域控造器主动将信息发送到HKEY_CURRENT_USER里,并且HKEY_CURRENT_USER信息被映射到系统内存中。其他用户的信息其实不发送到系统,而是记录在域控造器里。
键和子键
数据被朋分成多条理的键和子键,成立分条理(就象Exploer一样)构造更易于编纂。
每个键有成组的信息并且按照在此中的数据类型被定名。每个键在它的文件夹图标上都有一个加号(+)标记子键申明在它下面还有更多内容的工具。当点开它的时候,文件夹的加号标记被替代成一个减号(-)标记,然后显示出下一级的子键。
所有软件,硬件,windows工做的设置都存放在HKEY_LOCAL_MACHINE。
所有平安战略,用户权限和共享信息也包罗在那个键中。用户权限,平安战略,共享信息能够通过Windows NT域用户办理器,Explorer和Win95中控造面板来设置。
HKEY_CLASSES_ROOT
HKEY_CLASSES_ROOT包罗了所有应用法式运行时必须的信息:
在文件和应用法式之间所有的扩展名和联系关系;
所有的驱动法式名称;
类的ID数字(所要存取项的名字用数字来取代);
DDE和OLE的信息;
用于应用法式和文件的图标;
HKEY_CURRENT_CONFIG。
HKEY_CURRENT_CONFIG是在HKEY_LOCAL_MACHINE中当前硬件设置装备摆设信息的映射。若是系统只要一个设置装备摆设文件,也就是原始设置装备摆设,数据将不断在同样的处所。在控造面板|系统|硬件设置装备摆设文件|创建一个额外的设置装备摆设使额外设置装备摆设信息放入HKEY_LOCAL_MACHINE。
当Win95中存在多个设置装备摆设文件时,当每次计算机启动时将给出一个提醒让你选择一个设置装备摆设文件。在Winnt中,在启动时你能够按空格键来选择前次一般启动时硬件设置装备摆设文件。按照硬件设置装备摆设文件选择的差别,特定的信息被映射到HKEY_CURRENT_CONFIG。
HKEY_DYN_DATA
HKEY_DYN_DATA和其他的注册表控造键差别,因为现实上它其实不被写入硬盘驱动器中。Win95的一个长处是,在系统启动时HKEY_DYN_DATA那个控造键贮存搜集到的即插即用信息并设置装备摆设它们。它保留在内存中,Win95用它来控造硬件。
因为是在内存中,所以它不从硬盘中读取,每次当你启动计算机时,设置装备摆设都有可能会纷歧样。在启动时Win95必需计算超越1600种可能的设置装备摆设。所以,若是系统改动既定的设置而没有陈述给Win95那么潜在的问题就可能发作。系统大大都时间工做优良,但是并不是不断如斯。
HKEY_USERS
HKEY_USERS仅包罗了缺省用户设置和登岸用户的信息。固然它包罗了所有独立用户的设置,但在用户未登岸收集时用户的设置是不成用的。那些设置告诉系统哪些图标会被利用,什么组可用,哪个起头菜单可用,哪些颜色和字体可用,和控造面板上什么选项和设置可用。
HKEY_CURRENT_USER
用来保留当前用户和缺省用户的信息,HKEY_CURRENT_USER仅映射当前登岸用户的信息。
各主键的简单介绍
HKEY_LOCAL_MACHINE
HKEY_LOCAL_MACHINE是一个显示控造系统和软件的处置键。
HKLM键保留着计算机的系统信息。它包罗收集和硬件上所有的软件设置。(好比文件的位置,注册和未注册的形态,版本号等等)那些设置和用户无关,因为那些设置是针对利用那个系统的所有用户的。
HKEY_LOCAL_MACHINE\AppEvents
为了以后在瘦客户机上运行客户机/办事器如许的应用法式,在Win95/98中AppEvents键是空的。
应用法式现实上都驻留收集办事器上,那些键会保留部门指针。
HKEY_LOCAL_MACHINE\Config
那个键保留着你计算机上所有差别的硬件设置(那些从控造面板的系统属性中硬件设置装备摆设文件中能够创建)。那些设置装备摆设在启动时凡是被复造到HKCC。
每个设置装备摆设会被用一个键(好比0001或者0002等等)来保留,每个都是一个独立的设置装备摆设。若是你只要一个单一的设置装备摆设,那就只会有0001那个键
HKEY_LOCAL_MACHINE\Config\0001\Display
那个键暗示显示的设置,如荧屏字体,窗体大小,窗体位置和分辩率等
一个小技巧:当设置了计算机不撑持的大分辩率招致Windows不克不及启动时(黑屏),能够修改分辩率来处理。
进入平安形式,运行regedit。exe,在那个键的Resolution键值中把数据值修改为640,480或者800,600如许的低分辩率,然后从头启动计算机即可。
HKEY_LOCAL_MACHINE\Config\0001\System
那个键保留着系统里打印机的信息
HKEY_LOCAL_MACHINE\Config\0001\System\CurrentControlSet\Control\Print\Printers
在那个键下面,有一个键是为系统上每一个打印机设置的,通过控造面板添加和删除打印时机调整那个列表
HKEY_LOCAL_MACHINE\Enum
Enum键包罗启动时发现的硬件设备和那些既插即用卡的信息。
Win95利用总线列举在启动时通过差别的。ini文件来检测硬件信息。那些在启动时被安拆的和被检测到的硬件会显示在那里。子键包罗BIOS, ESDI, FLOP, HTREE, ISAPNP, Monitor, Network, Root, SCSI, 和 VIRTUAL。
子键名暗示它们各自的硬件设备信息。
HKEY_LOCAL_MACHINE\Enum\BIOS
BIOS键保留着系统中所有即插即用设备的信息。它们用一套代码数列出,包罗每一个键的详细申明,举例,*pnp0400是并行口LPT1的键。若是LPT1其实不具备即插即用功用,它就会别列入到Enum下的Root键中
HKEY_LOCAL_MACHINE\Enum\Root
Root键包罗所有非即插即用设备的信息。
在那里,我们能够敏捷判定哪些设备是即插即用,那些不是。好比SCSI适配器,那个设备必需契合Win95中一个键名为ForcedConfig的硬件设置,那个不会改动。
HKEY_LOCAL_MACHINE\Enum\Network
win95的收集功用在那个键有详细申明,子键包罗了每个已经安拆的次要的办事和协议。
HKEY_LOCAL_MACHINE\HARDWARE
hardware子键包罗了两个多层的子键:DESCRIPTION键,它包罗了中央处置器和一个浮点处置器的信息。还有一个设备映射键,它下面的串行键列出你所有的com端口。那个hardware键仅保留超等末端法式的信息,及数学处置器和串行口。
HKEY_LOCAL_MACHINE\Network
那个键仅保留收集登岸信息。所有收集办事细节都保留在HKEY_LOCAL_MACHINE\Enum\Network那个键中。那个键有一个子键,logon,包罗了lmlogon(当地机器登岸?0=false 1=true)的值,logonvalidated(必需登岸验证),战略处置,主登岸体例(Windows登岸 ,微软收集客户体例等),用户名和用户设置装备摆设。
HKEY_LOCAL_MACHINE\SECURITY
security 有两个子键,第一个是存取(它最末以致一个长途键列出收集平安资本,存取权限等)和供给(包罗列出收集地址和地址办事器),那个键被保留用在以后利用高级平安功用和NT兼容性上
HKEY_LOCAL_MACHINE\SOFTWARE
那个键列出了所有已安拆的32位软件和法式的。
ini文件。它包罗了变革,依靠软件安拆。那些法式的控造功用在那里的子键中列出。大都子键简单的列出了安拆软件的版本号。
我们在\Microsoft\Windows\Current Version下发现了一些有意思的设置,它有如下子键:
1。
App paths: 你曾经安拆过的所有32位软件的位置。
2。Applets, Compression, Controls Folder : 包罗下控造面板象显示属性那样属性条的附件。
3。Detect, explorer :良多有意思的子键如Namespace keys of Desktop和My Computer----它们指出了收受接管站和拨号收集的CLSID行----和提醒子键能够让你成立本身的提醒。
4。Extensions : 一个扩展联络的列表,当前相联系关系的扩展名和比特定的施行文件更合适的目的类型。
5。Fonts, fontsize, FS Templates :系统属性条中所选择文件系统模板, 办事器,桌面计算机或者条记本电脑信息。
6。MS-DOS Emulation :包罗一个应用法式兼容子键 为大量过时的法式二进造键所设。
7。MS-DOS Options :在dos形式下的设置,如 s,cd-roms等。
8。Network :收集驱动的设置装备摆设。
9。
Nls, Policies :系统办理员认为你不该该去做的事。
10。ProfileList :所有能够登岸你计算机的用户名列表。
11。在Windows启动时运行的法式的奥秘之处是它们其实不在起头菜单的启动文件夹中。它们在HKEY_LOCAL_MACHINE\Microsoft\Windows\CurrentVersion\下的子键中被施行。
Run : 法式在启动时运行
RunOnce : windows初始化时法式在启动时只运行一次,那个经常用在当安拆软件之后需要从头启动系统的时候,所以那个键一般都是空的。
RunServices : 它就象Run一样,但是包罗了“办事”,它不象一般的法式它们是比力重要的或者是“系统”法式。
但是它们不是VXDs,就象McAfee或者RegServ工做一样。
RunServicesOnce : 它只运行一次,但是是“系统本身”的安拆(大量的windows安拆参数:凡是键值包罗了系统目次位置,和win95更新,可选项安拆组件,和windows启动目次的子键。
留意:在良多黑客木马软件中,常常在那里添加键值(一般是在Run中),如许使得木马软件能够跟着windows启动而启动而且很隐秘。在那里能够查看不一般的启动项和去掉无用的运行法式(好比我就很不喜好超等解霸的主动伺服器,在那里能够去掉它)。
12。SharedDLLs:共享DLL的列表,每一个都给出了在一个不成知系统的一个数字品级。
13。Shell Extensions:列出了“被承认的”OLE注册条,和响应的CLSID毗连。
14。ShellScrap :那个包罗了一个PriorityCacheformats的子键,它包罗了一个空的有限值,它更象过去SmartDrive号令行参数的派生。
15。Time Zones : 主键值是你如今的时区;子键定义了所以可能的时区。
16。Uninstall:那个保留了法式在添加/删除法式对话框的显示;子键包罗了指向反安拆法式的途径。和安拆领导类似。。。。。。。)winlogon(包罗了合法登岸书记的文本句)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet
那个子键包罗设备驱动和其他办事的描述和控造。
差别于windows nt,win95只包罗限造驱动的控造设置信息。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
那个子键包罗了win95控造面板中的信息。不要编纂那些信息,因为一些小法式的改动在良多处所,一个丧失的项会使那个系统变的不不变
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
那个键包罗了所有win95的尺度办事。
所有被添加的办事和设备,每个尺度的办事键包罗了它的设置和辨认设置。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Arbitrators
atbitrators键包罗了当两个设备配合占用同样的设置需要处理的信息。
四个子键包罗了内存地址,抵触,DMA,I/O端口抵触和IRQ抵触。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Class
class键包罗了所有win95撑持的设备classes控造,那些和你在添加新硬件呈现的硬件组很类似,还包罗了那些设备若何安拆的信息。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\inetaccs
那个键包罗了关于那个系统变革的ie附件的可用性,它仅在你安拆过ie2。0或者更高版本才呈现。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSNP32
msnp32描述了客户机若何在microsoft收集中实现功用,它包罗了认证过程和认证者的信息。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NWNP32
nenp32键描述了windows客户若何在netware收集中工做功用,它包罗了关于认证过程和证明者的信息。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RemoteAccess
在那个键里包罗需要长途工做在win95系统上的信息,有认证参数,主机信息,和为了成立一个拨号毗连工做的协议信息。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP
那个键包罗了所以snmp(简单收集办理协议)的参数。它包罗了允许的办理,设置装备摆设陷阱,和有效的团体。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VxD
vxd键包罗了win95中所有32位虚拟设备驱动信息,win95主动办理它们,所以没必要要用注册表编纂器编纂它们,所以的静态vxds用子键列出。
HKEY_LOCA。
楼上的哥哥是不是太专业了 太深邃了
我来简单解释一下
注册表是微软操做系统的核心部位
通过它能够调控整个系统
我们在安拆软件的时候往往都需要用到注册表
会注入注册表傍边信息
那些信息累积过多
就会形成系统的痴肥变慢
所以我们必需要清理注册表
如许使我们的系统更清洁快速
一般能够借助专业的软件来完成对注册表的清理和维护
在那里我介绍给你一款软件
“超等兔子”
它能够彻底清理系统里面的注册表
主动完成注册表的优化
很便利
你能够下载一个
详细下载 能够用百度搜刮
好了
不是很大白
请与我联络305617460