内存条故障引起注册表出错的解决

Author: 张长青 Date: 1999年 第21期 23版

    最近笔者连续碰到两起因内存条“软故障”引起Windows95/98系统注册表出错的问题,感受颇深。这两起故障的起因虽然各有不同,但后来都有同一个表现,那就是显示注册表有错。这里所说的内存“软故障”,是指硬件内部故障所引起的后果不严重、自检也不可能直接表明的硬件问题。
    故障现象:1.同事的电脑升级后,开机时总要显示注册表有错误,要求重新启动由系统自动修复。有时重启动系统可以修复,有时需要多次重新启动系统才能修复注册表,直到后来无法修复。但若对系统的提示不予理睬,电脑还是可以正常工作。同事说电脑升级前工作正常,从未出现这种错误提示,升级后便出现了这种情况。,其实升级也只是增加了内存条和更换了容量更大硬盘。升级以后的电脑配置仍然较低,基本配置为:Pentium100 CPU、32MB内存、2.1GB硬盘。
    2.近来我的电脑每次冷启动时,系统自检内存总是检测到小部分后就进入系统,从而使系统性能大大降低。但若按“del”键进入CMOS后,哪怕你没有对CMOS的参数作任何修改,只要再退出CMOS程序,自检内存往往可以全部通过,并能顺利进入系统。但也有可能要到第三次或第四次进入CMOS程序后,才能顺利检测出全部内存,如开始只能检测到7MB,再次检测也只能检测到9MB,第三次才能全部检测出内存。
    开始出现这种情况时,进入后再退出CMOS程序,就能正常进入系统工作,可后来修改了CMOS设置,虽然自检可以检测到全部内存,但进入系统后总要出现注册表有错误的提示,要求重新开机由系统自动修复。开始时系统可以自动修复,可后来无论如何也无法自动修复注册表了。与“故障1”相同的是,对提示不予理睬,系统完全可以正常工作。(^212302a^)
    故障分析与处理:对于故障1,由于电脑总是显示注册表有错误,且系统无法自动修复,首先想到的当然是调出注册表与其它正常电脑中的注册表比较,比较后发现没有多少差别,便怀疑操作系统受到病毒攻击,破坏了系统的修复功能。先杀毒,杀毒中没有任何染毒迹象显示。再重新安装操作系统,当安装到一半时,系统无法进行下去,只得退出安装环境,故障依旧。
    当然,我注意到了同事电脑的硬件升级内容,但因升级工作是由计算机中心完成,硬件质量一般是有保证的。再者,如果硬件有问题,系统一定会在自检时就显示硬件错误,特别是内存和硬盘。无可奈何,在征得同事同意并将其重要内容备份之后,从DOS开始重新安装整个系统软件。就在安装DOS操作系统时,故障的真面目才开始暴露出来。
    DOS系统安装完后重新开机时,正常情况下,系统配置文件Config.sys要将Himem.sys和Emm386.exe调入系统,完成对扩展内存或扩充内存的管理工作。但该系统显示Himem.sys和Emm386.exe无法管理扩展内存,并说明在扩展内存的某处地址有错误。更换该内存条,DOS系统顺利通过,Windows95系统也能顺利安装,整个系统恢复正常工作。
    至于故障2,开始时,由于进入CMOS后就能检测出全部内存,估计内存存在故障的可能性较小。又因当时正闹CIH病毒,便怀疑是CIH作怪,破坏了CMOS程序。找来专杀CIH病毒的最新版本KV300++查杀,没有发现任何CIH迹象。不得不使机器“带病”工作了一段时间,在带病工作的后期,有时系统显示注册表有错,需要重新启动后由系统自动修复。可发展到后来,系统无论如何也无法修复注册表。
    开始,同样认为是操作系统被破坏,因而重新安装Windows98。安装前期的系统检测工作都能顺利通过,但正式安装到18%时,系统显示*.CAB安装文件有错误,无法进行下去。采用最新正版Windows98光碟安装,结果一样。既然Windows98不能安装,那就从DOS开始安装试试。安装DOS时所反映出来的问题和故障1相同,维护方法当然一样,更换有故障的内存条后一切问题迎刃而解。