注册表故障的现象、分析及处理 我们知道注册表是Windows的“命根子”，其中保存有Windows以及应用程序的重要数据，即使是哪个细小地方出了问题，轻则无法访问硬件设备，无法运行应用程序，重则系统无法启动，死机等，那么注册表为什么会出问题呢？ 注册表被破坏的途径 注册表被破坏的主要途径可以归结为三大类: 1.向系统中添加应用程序和驱动程序
由于用户经常地在Windows上添加或者删除各种应用程序和驱动程序，因此，基于以下几种情况，注册表有被破坏的可能性：
(1) 应用程序的错误
在实际使用过程中，很少有完全没有错误的应用程序。最好的情况就是用户在使用软件过程中没有遇到错误，而且那些看似微小的错误，可能会导致非常严重的后果。同时，当今的软件是如此的繁多，谁也不能确定当多个软件安装在一个系统里以后，是否能正常运行，彼此间是否毫无冲突。那些做Beta测试的软件，就是因为系统还没有定型，还有相当多的错误，希望被测试用户在使用过程中发现。
(2) 驱动程序的不兼容性
虽然驱动程序一般都经过了比较周密的测试，但是由于PC的体系结构是一个开放性的体系结构，谁也不能确认每个驱动程序会和哪些其他程序协同工作。因此，谁也不可能测试所有的可能性，这样就有不兼容的可能性存在。
(3) 使用了错误的驱动程序
某些驱动程序是16位，在安装到32位的Windows 95/98操作系统后，可能出现不兼容的情况。
(4) 应用程序在注册表中添加了错误的内容
某些应用程序在修改注册表时，增加了不该增加的内容，或者将原来正确的注册表内容修改为不正确的内容。
(5) 应用程序添加了错误的数据文件和应用程序之间的关联。

2.硬件被更换或者被损坏
如果计算机系统本身出现了问题，常常会导致注册表的毁坏。下面列出了几种原因会导致计算机系统出现问题：
(1) 病毒
现在一些病毒（如CIH病毒等）可以更改系统的BIOS程序，使BIOS程序受到破坏。还有一些病毒可能会隐藏在Cache中，使系统运行不正常。某些CMOS病毒能够清除CMOS存储器所保存的硬件数据。
(2) 断电
在非正常断电情况下，可能会烧毁主板或者其他硬件设备。
(3) CPU烧毁
在CPU超频情况下，可能会烧毁CPU。另外，在夏天工作时，由于温度过高，对于发热量较大的CPU（如AMD、Cyrix、IBM、WinChip等）极易烧毁。
(4) 硬盘错误
由于硬盘质量不稳定，导致系统受到破坏。
3.用户手工修改注册表
由于注册表中的数据是非常复杂的，所以，用户在手工修改注册表的时候，极易导致注册表中的内容的毁坏。有时，用户会用另一台计算机上的注册表覆盖本地计算机上的注册表文件，但是一份注册表在某一台计算机上使用正常，并不等于它会在其他计算机上也使用正常，这样做极易破坏整个系统。
注册表出现问题的征兆
注册表损坏的迹象千变万化，这里只能列出常见的Windows 98注册表出现损坏时最可能的9种信号。
1．Windows根本不启动，或仅以安全模式或MS-DOS模式启动；
2．应用程序出现“找不到服务器上的嵌入对象”或“找不到OLE控件”这样的错误提示；
3．不久前工作正常的硬件设备不再起作用或不再出现在“设备管理器”的列表中；
4．网络连接不能建立或不再出现在“拨号网络”中或“控制面板”的“网络”中；
5．当单击某个文档时，Windows给出“找不到应用程序打开这种类型的文档”信息，即使安装了正确的应用程序且文档的扩展名（或文件类型）正确；
6．“资源管理器”页面包含没有图标的文件夹、文件或者意料之外的奇怪图标;
7．“开始”菜单项目或“控制面板”丢失或变灰而处于不激活状态；
8．Windows显示“注册表损坏”这样的信息；
9．当试着使用过去工作的程序时，得到诸如“找不到xxxx.DLL”的信息，或其他表明程序的部分丢失或不能定位的信息。
注册表的三类故障解决办法
第一类：在Windows下恢复
如果在修改注册表后，重新启动计算机时系统报错，则说明刚才修改的注册项一定有问题，这个时候进入注册表把刚刚修改了的注册项恢复到修改前的位置，一般都可以解决问题，因此特别强调在修改注册表之前先进行备份，导出注册表的所有内容（注意，是所有内容），在出现问题的时候你只要双击备份的注册表文件，注册表就恢复了，这种方法恢复起来特别方便，如果作了禁用注册表编辑器的修改，用这种方法恢复也特别有效。
第二类：在安全模式下解决
Windows系统提供的安全模式是帮助我们在系统启动遇到问题的时候，用来紧急恢复系统的，安全模式下对注册表故障的解决也特别有效。
如果你在注册表修改后，不能正常进入系统，可以先试试Windows的安全模式，在启动Windows的时候按F5进入到Windows的安全模式，然后进入到注册表，把你对注册表所做的修改，恢复成以前的样子，故障就解除了。例如，你在禁止非法用登录的时候，没有在“网络/配置”里选择“Windows友好登录”而出现不能进入Windows的故障时，进入安全模式下恢复就特别有效。
第三类：在DOS下恢复
如果你连安全模式都进不去，那你就只有在DOS下恢复注册表了，用Scanreg/Restore可以将注册表恢复过来，你也可以运行Regedit /E HJD.REG命令将注册表导出到HJD.REG文件中,再用EDIT HJD.REG命令打开它,将你对注册表作出修改的地方改回到以前的样子,最后,用Regedit hjd.reg命令,将你恢复后的注册表文件导入到系统中。
另外，Windows每天均会对注册表进行自动的备份，备份文件放在Windows目录下的SYSBCKUP目录下，名为rb001.cab到rb005.cab，它们是最新的5个注册表备份，如果你进不了Windows但又不知道问题出在什么地方，可以用SCANREG命令，恢复这些文件的其中一个试试。
Regedit命令语法:
Regedit [/L:system] [/R:user] filename1
Regedit [/L:system] [/R:user] /C filename2
Regedit [/L:system] [/R:user] /E filename3 [regpath]
其中:
/L:system 指定system.dat文件的存放位置。
/L:user 指定user.dat文件的存放位置。
filename1 指定引入注册表数据库的文件名。
/C filename2 指定形成注册表数据库的文件名。
/E filename3 指定导出注册表文件的文件名。
regpath 指定导出注册表文件的开始关键字(缺省为全部关键字)
ScanReg命令语法:
ScanReg /[Option]
其中:
Option可为?（获取帮助信息）、BACKUP（备份注册表）、RESTORE（恢复注册表）、FIX（修复注册表）、COMMENT（将说明信息加入到备份注册表文件.CAB中）。

（裴林劲）