更新时间:2024-09-16 20:33
Windows注册表(Registry)实质上是一个庞大的数据库,它存储着下面这些内容:用户计算机软、硬件的有关配置和状态信息,应用程序和资源管理器外壳的初始条件、首选项和卸载数据;计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件的描述、状态和属性;计算机性能记录和底层的系统状态信息,以及各类其他数据。
在Windows中,注册表由两个文件组成:System.dat和User.dat(windows 95/98),保存在windows所在的文件夹中。它们是由二进制数据组成。System.dat包含系统硬件和软件的设置,User.dat保存着与用户有关的信息,例如资源管理器的设置,颜色方案以及网络口令等等。
Windows为我们提供了一个注册表编辑器(Regedit.exe)的工具,可以用来查看和维护注册表,注册表编辑器与资源管理器
注册表主要由六大部分组成(windows 95/98/me操作系统都是六大主键;而到了windows 2000/xp/win2003和后续各种的windows操作系统都是五大主键,HKEY_DYN_DATA这个主键只有在windows 95/98/me操作系统的注册表当中才存在),即最初启动注册表编辑器窗口左侧的六大主键,都是以HKEY开头,每个主键当中都包含每一特殊种类的信息。
HKEY_CLASSES_ROOT(种类:根主键):包含了所有已装载的应用程序、OLE或DDE信息,以及所有文件类型信息。每一个用圆点开始的子键表示一种文件类型。例如.avi,在右边列表框中显示.avi对象的“Content Type”为一视频文件。注册表称之为“avifile”。在文件扩展项目后是按字母顺序排列的列表,包括所有应用程序和实用工具的文件名。在应用程序列表中,可以找到应用程序的描述、图标文件信息应用程序在OLE和DDE被激活时的缺省形式。
HKEY_CURRENT_USER(种类:当前用户主键):记录了有关登录计算机网络的特定用户的设置和配置信息。其子键有:
AppEvent:与Windows操作系统当中各种特定事件相关连的声音及声音文件所在路径的设置数据。
Control Panel:包含了一些存储在win.ini及system.ini文件中的数据,并包含了控制面板当中的项目。
Install_Location_MRU:记录了装载应用程序的驱动器。
Keyboard Layout:识别普遍有效的键盘配置。
Network:描述固定网与临时网的连接。
RemoteAccess:描述了用户拨号连接的详细信息。
Software:记录了系统程序和用户应用程序的设置。
HKEY_LOCAL_MACHINE(种类:机器主键):该主键存储了Windows开始运行的全部信息。即插即用设备信息、设备驱动器信息等都通过应用程序存储在此键。子键有:
Config:记录了计算机的所有可能配置。
Driver:记录了辅助驱动器的信息。
Enum:记录了多种外设的硬件标识(ID)、生产厂家、驱动器字母等。
Hardware:列出了可用的串行口,描述了系统CPU、数字协处理器等信息。
Network:描述了当前用户使用的网络及登录用户名。
Security:标识网络安全系统的提供者。
Software:微软公司的所有应用程序信息都存在於该子键中,包括它们的配置、启动、默认数据。
System:记录了第一次启动Windows时的大部分部分信息。
HKEY_USERS(种类:用户主键):描述了所有同当前计算机联网的用户简表。如果您独自使用该计算机,则仅.Default子键中列出了有关用户信息。该子键包括了控制面板的设置。
HKEY_CURRENT_CONFIG(种类:当前配置主键):该主键包括字体、打印机和当前系统的有关信息。
HKEY_DYN_DATA(种类:动态数据键);该键存储了系统的动态信息,这些信息保存在随机存储器中。此键住处能用于系统快捷操作,可以看到网络统计和当前系统配置的任何信息。(这个主键只有在windows 95/98/me操作系统的注册表当中存在)
要手工编辑注册表,就要求打开注册表编辑器,这是必然的。那么如何打开注册表编辑器呢?在NT架构的windows操作系统上有什么方法可以打开新版本的注册表编辑器呢?
win95/Win98/Me
1.打开方法:单击「开始」→运行→输入regedit
2.另外一种方法:在Windows目录下找到regedit.exe,直接双击也能打开。随后是Win2000/XP/2003出场。因为win2000/XP/2003在设计时加上了权限这一概念,所以在这3种系统里面有3种方法可以打开注册表编辑器。一种是直接在开始--运行中输入regedit,出现的界面和win95/win98/Me一样。这里就不详细说明了。另外一种打开方式是本文的重点内容———有权限限制的注册表编辑器(打开方法:开始———运行中输入regedt32)。图1所示(这里是WinXP的截图
大家可以在图1中看到当你选中一个键值的时候,编辑下拉菜单下就能看到一个选项———权限,用鼠标单击这个选项以后会出现下一个窗口。用鼠标分别单击各个用户组就能看到不同的权限限制,如果你觉得某一个用户组的权利太高了,就能在下方修改权限(注意:必须赋予Administrator组用户完全权限,否则一旦你或相应的软件、驱动程序要修改注册表,但是由于所有的组用户都没有权限修改,所以你将不能够成功安装。所以必须把完全权限赋予Administrator组用户(系统默认)。
操作系统版本;打开方法;注意事项。
win95/Win98/win98SE/Me操作系统运行中输入regedit.exe因为win95/98/ME里面没有任何有效的权限限制功能,所以任何用户均对注册表有完全控制功能。
Win2000/xp/2003/vista/7/8等操作系统
1.运行中输入regedit.exe
2.运行中输入regedt32.exe
使用第一种方法打开的注册表编辑器和第二种的界面一样,而且功能也一样,同样可以设置权限,但是使用第二种方法打开的注册表编辑器就能很方便的设置权限,如果你作为一个网络管理员的话,建议你安装完系统以后使用第2种方法打开注册表编辑器,然后修改需要修改的权限设置部分以免被他人恶意修改。
注册表通过主键和子键来管理各种信息。但是注册表中的所有信息都是以各种形式的键值项数据保存的。在注册表编辑器右窗格中显示的都是键值项数据。这些键值项数据可以分为三种类型:
在注册表中,字符串值一般用来表示文件的描述和硬件的标识。通常由字母和数字组成,也可以是汉字,最大长度不能超过255个字符
DWORD值是一个32位(4个字节)的数值。
如果注册表遭到破坏,Windows将不能正常运行,为了确保Windows操作系统安全,我们必须经常的备份注册表。
Windows每次正常启动时,都会对注册表进行备份,System.dat备份为System.da0,User.dat备份为User.da0,它们存放在Windows所在的文件夹中,属性为系统和隐藏。
以下为2种备份注册表的方法:
1.利用Windows中的注册表编辑器(Regedit.exe)进行备份
运行Regedit.exe,单击“文件“-->;“导出注册表文件“命令,选择保存的路径,保存的文件为*.reg,可以用任何文本编辑器进行编辑。
2.利用Win95恢复工具(Emergency Recovery Utility)。利用这个工具不但可以备份和恢复注册表,还可以备份硬盘中的任何文件。
恢复:
当注册表损坏时,启动时Windows会自动用System.dat和User.dat的备份System.da0和User.da0进行恢复工作,如果不能自动恢复,可以运行Regedit.exe(它可以运行在在Windows下或DOS下),导入.reg备份文件。也可以运行ERU.EXE进行恢复。
如果您没有进行备份或者注册表损坏的非常严重,那么您可以试试最后一招:在c:\u4e0b有一个System.1st文件,属性为隐藏和只读,它记录着安装Windows时的计算机硬件软件信息,用这个文件覆盖System.dat。
但这样的话,您安装的应用软件可能会无法运行,必须要重新安装。
通过修改注册表我们可以实现一些特殊的功能,但是注册表又是十分脆弱的,一个不小心就会出现错误。那么我们怎么样来修改注册表呢?我总结为以下几种方法:
通过一些专门的修改工具来修改注册表,比如:MagicSet、TweakUI、WinHacker等等。其实windows操作系统自身的控制面板就是一个这样的工具,只不过功能简单一些。
将要修改的写入一个.reg文件中,然后导入注册表中.reg文件的基本格式为:
REGEDIT4
……
……
第一行为“REGEDIT4”,必须大写,若是windows 95/98/me操作系统则写REGEDIT4,而若是windows 2000/xp/2003操作系统的话;则是写Windows Registry Editor Version 5.00
之后第二行必须为空行。
第三行使用[]括起子键
以下类似。
这样做的好处是可以避免错误的写入或删除等操作,但是要求用户了解注册表的内部结构和.reg文件的内容格式。
就是通过注册表编辑器直接的来修改注册表的键值数据项,这样做会避免在注册表中留下垃圾(虽然都很小,但越来越多会拖慢系统速度),但是要求用户有一定的注册表知识,熟悉注册表内部结构而且一定要小心谨慎。
组里,一些重要的、不须用户干涉的系统程序,则存放在注册表删除。如果程序不在启动组中,则须要通过修改注册表来删除。
Run和RunServices的区别是,Run中的程序是WINDOWS初始化后才运行的,而RunService中的程序是在操作系统启动时就开始运行的,也就是说RunServices中的程序先于Run中的程序运行,如电源管理程序。
值:鼠标右键的菜单
01 00 00 00:复制
02 00 00 00:剪切
03 00 00 00:复制和剪切
10 00 00 00:重命名
20 00 00 00:删除
30 00 00 00:重命名和删除
40 00 00 00:属性
50 00 00 00:重命名和属性
53 00 00 00:复制、剪切、重命名、属性
60 00 00 00:删除和属性
63 00 00 00:删除、属性、复制、剪切
70 00 00 00:重命名、删除和属性
73 00 00 00:重命名、删除、属性、复制、剪切
为光驱增加缓存是提高光驱读写速度性能的一个有效方法,由于Windows 98操作系统推荐使用四倍速或更高速的光驱访问方式,与所流行的光驱不相符合。为了适应当今流行的16倍速以上的光驱,我们可以通过修改注册表来提高光驱缓存的大小和预读取性能,以加快光驱的运行速度,将光驱性能发挥到极限。
注意:如果修改了两个键值导致光驱不能正常工作,如不能正常播放VCD,请降低一个档次的值。
在机器所配置的驱动器中,恐怕软盘驱动器的读写速度最慢,除了由物理方面的性质所决定之外,也跟Windows 98系统采用默认FIFO来管理软盘驱动器,使之不具备后台存储管理功能有关,因此可以通过修改注册表来优化软盘驱动器的性能。
对单机用户而言,开始功能表中的登录实在是一个没有用的东西,但是又不知道如何删除。有方法了,照着下列步骤,就能把那碍眼的选项消除了。打开注册表编辑器(Regedit.exe),找到下列关键字
缺省值设定为explorer.exe %1;对准一文件夹单击右键吧!可以选择在新窗口中打开。
重新启动后,在“我的电脑”中打开Windows目录,选择“大图标”,然后你看到的Bmp文件的图标再也不是千篇一律的MSPAINT图标了,而是每个Bmp文件的缩略图。
可将控制面板或其它特殊文件夹的内容放入到开始菜单或任意一个文件夹中,先在文件菜单中单击新建,单击文件夹,然后按如下所示粘贴适当的名称:
控制面板:Control Panel.
拨号网络:Dial Up Net.
打印机:Printers.
右击APPS,选择新建主键,键名是你要增加声效的应用程序名,如你看到其它的那样,然后右击刚建的主键,再建主键。键名可为:AppGPFault;Close;Maximize;MenuCommand;MenuPopup;Minimize;Open;RestoreDown;RestoreUp;SystemAsterisk;SystemExclamationSystemHand;SystemQuestion,然后关闭编辑器,回到控制面板/声音。你会发现想增加声效的程序的标签,这时你可将其连接到喜欢的音乐上。
此一问题比较普通的解决方法是在[开始/程序/启动]文件夹中放置程序的快捷方式,若用此一方法, 则使用者仍然可以在开机时按住Shift,让Windows忽略[启动]文件夹中的程序,也就是不行。是不是有什么方法可以让程序一定执行呢?
value名称键value值记事本Notepad填写时,[value值]的部分可以是完整程序名,但如果添入程序名(未含完整路径),则执行程序必须位于Windows的目录里或Windows的System目录下、当前工作目录或PATH环境变量所定义的目录下,Windows才能加载执行,以Notepad.exe程序为例,由于是位于Windows的目录下,所以只要程序名即可。至于[value名称]的部分则没什么限制,只要不与其他value名称相冲突即可。
快捷菜单中出现的提示信息,如省略此项将在右键菜单中显示主键名称Close,用&;隔开可定义快捷键,然后再在Close下建立下一级子键Command,双击该子键窗口右面的默认处并在键值栏内输入Rundll32.exe User.exe,ExitWindows字符串。不用重启系统,直接右击开始菜单选关闭计算机就可关闭您的机器。
用来编辑和修改注册表信息,让电脑更合理地运行。
在开始菜单中点击“运行”,输入regedit即可打开注册表。
在开始菜单中点击“运行”,输入regedt32也可以打开注册表。这个是更完全的注册表编辑器。
如果你想通过一个按键可以快速导致系统蓝屏的话,可以按下面这个方法进行:
2.单击“编辑”-“新建”-“dword值”命令,创建一个dword类型的值,并将其命名为“CrashOnCtrlScroll”。
3.双击新建的CrashOnCtrlScroll值,在“数值数据”文本框中键入“1”。
4.关闭注册表,重启计算机。一个简单的Ctrl+ScrollLock快捷键便可立即导致系统蓝屏。注意的是:按Ctrl键时,必须按键盘右侧的Ctrl键!
“注册表编辑器”是Windows系统中的敏感部位,为防止非法用户登录服务器后修改注册表,可以通过编辑组策略来禁止对注册表的访问。以Windows XP系统为例介绍方法:
在“组策略编辑器”窗口中依次展开“用户配置”→“管理模板”目录,并选中“系统”选项。然后在右窗格中将“阻止访问注册表编辑工具”策略设置为“已启用”状态,这样当用户试图打开“注册表编辑器”的时候,系统会禁止用户的操作并弹出提示消息。