请问什么是注册表?是用来做什么的?为什么要清理注册表?如何清理注册表?
一、注册表是什么?
册表(Registry)是微软公司从Windows95系统起头(至目前最新Win2000系统仍然利用的是它),引进用于取代原先Win32系统里。ini文件,治理设置装备摆设系统运行参数的一个全新的核心数据库。
二、注册表是用来干什么的?
在那个数据库里整合集成了全数系统和利用法式的初始化信息;此中包罗了硬件设备的阐明、彼此联系关系的利用法式与文档文件、窗口展现体例、收集毗连参数、以至有关系到计算机平安的收集享设置 。
它与老的win32系统里的ini文件比拟,具有便利治理,平安性较高、适于收集操做等特征。
注册表有很大的用途,功用十分强大,是windows的核心。通过修改注册表,我们能够对系统停止限造、优化等等。好比我们不想让他人用“起头”菜单,我们能够修改注册表来到达目标。
除此之外,还有良多了,
三、
一般系统启动都要对注册表停止扫描,以便治理计算机系统,所以注册假设很浩荡的话,对系统启动和一般运行都要占用更多的内存和CPU,如许就影响了系统的运行速度和不变,所以要对注册表停止清理。
四、
Regedit。
exe是微软供给的一个用于编纂注册表的东西,它为所有windows系统自带,因而能够说是最通用的注册表编纂东西。因为Windows系统没有供给运行那个利用法式的菜单项,因而必需手动启动它,启动办法很简单:起首翻开'起头菜单(Start)'里的'运行(Run)' 菜单项,如图一所示在对话框中输进regedit并点确定。
那时将呈现regedit的主界面。
至于到底怎么清理,不是一时半会能计完的,那个要对注册表有了一个更的熟悉后才气停止。
最初提醒一下,注册表修改可不是闹着玩的,此中有些键值是不克不及随意改的,因为假设你没有备份,而又不晓得怎么改回来的话,那就费事了,我也帮不了你。
所以劝说列位在修改注册表之前必然要记得备份,切记!
什么是注册表?
注册表因为它复杂的构造和没有任何联络的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用子键列出。