只有管理员权限的用户可以访问系统注册表数据,其中存放了系统中各项重要的核心设置数据。系统的注册表数据就是“注册表编辑器”左侧窗格显示的[HKEY_LOCAL_MACHINE]所包含的项、子项和值项。
小提示 ★当要清除一个值项的键值而保留键名,可将键值设为""(如“"Max Threads"=""”)。无论该键值原来是什蠢嘈停宄蠖冀涑伞白址怠崩嘈停浴白址怠崩嘈鸵酝獾钠渌嘈偷募狄话阒苯由境怠5币薷囊桓鲋迪畹募担捎谩?键名"=类型:键值”的形式(例:“"Max Threads"=d
Word:00000001”),如为字符串值,则可省略类型但须在键值两侧加上英文双引号(例:“"Title"="Hello"”)。
★当要删除一个子项或项,如要删除[HKEY_CURRENT_USER\Software\Xi\NetTransport 2\Download],则只需将语句设置为
“[-HKEY_CURRENT_USER\Software\Microsoft\
Windows \CurrentVersion\Run\MyRunningProgram]”(不含中文引号,在项或子项名称的左侧添加一个减号“-”)。
任务4:自动备份注册表 [HKEY_CURRENT_USER]和[HKEY_LOCAL_
MacHINE]这两个分支是黑客程序、后门、
病毒及恶意网站最常攻击的目标,一旦这两个分支下的数据被病毒修改,要一一排查被修改的数据是件非常困难的事,而手动地输入命令备份相当麻烦,如何快速备份和恢复被“劫持”的系统呢?
第一步:打开“记事本”,输入下列内容,并保存为myregbak.bat:
@echo off
set mypath="c:\myfolder\"%date%""
if exist "%mypath%" rd /s /q "%mypath%"
md "%mypath%"
cd "%mypath%"
reg export hkcu myreg.reg
reg export hklm sysreg.reg
这段脚本的大意是:首先定义一个变量并将其设置为C:\myfolder下以当天的日期命名的一个目录,如果该目录不存在就根据变量值创建此目录。然后将当前目录转到这个目录中,如果已经存在用户个人的注册表备份文件myreg.reg则删除,重新导出用户个人的注册表数据到文件。如果已经存在系统的注册表备份文件sysreg.reg则删除,重新导出系统的注册表数据到文件。
小提示 如果不是管理员权限的用户,不需要备份系统的注册表数据(不要输入第7行即可)。以上提供的批处理角本在
Windows XP下测试通过,
驱动器、路径及文件名可自定义。
第二步:在桌面、任务栏、开始菜单处创建myregbak.bat批处理文件的快捷方式,随时手工备份。
第三步:单击“控制面板→任务计划→添加任务计划”,在向导中选择myregbak.bat批处理文件,创建“备份注册表”任务。右击“备份注册表”任务图标,选择“属性”,单击“计划”选项卡,选择一种每日定时或定期备份的方式,以便让计算机能够自动备份注册表。
任务5:每天首次登录/启动时备份注册表 适当修改myregbak.bat批处理文件,单击“开始→运行”,输入“gpedit.msc”,打开“组策略”。双击打开“用户配置→Windows设置→脚本→登录”或“计算机配置→Windows设置→脚本→启动”,点击“添加”按钮并选择myregbak.bat,即可实现每天首次登录/启动计算机时备份一次注册表。修改后的批处理文件如下:
@echo off
set mypath="c:\myfolder\"%date%""
if exist "%mypath%" goto :end
md "%mypath%"
cd "%mypath%"
reg export hkcu myreg.reg
reg export hklm sysreg.reg
:end
注意:本文提供的批处理脚本的保存位置应与mypath的位置在同一盘符下。
小提示 过期的注册表备份文件,推荐不定期手工删除,以免占用过多硬盘空间。如果感兴趣的读者可以尝试编写一个脚本文件并利用“任务计划”实现自动删除。