Windows致命错误的解决办法

Author: 许忠英 Date: 2001年 13期

    常常使用Windows的人,或多或少都会遇到下面这种情况,电脑屏幕上突然出现“A Fatal Exception……” 或者“Rundll32 caused a general protection fault……”后面接着一大串字符。对于英文不好的人,简直就是一头雾水,认识英文的人虽然每个单词都明白,加在一起却不知道是什么意思,到底该怎么办呢?下面就为你一一解析,让你再次遭遇这一号称“致命错误”时不再心慌:
      1.A Fatal Exception 0E has occurred at 0028:XXXXXXXX in VXD
      SYMEvent(02)+XXXXXXXX
      安装完 Windows 之后出现上述提示或者从IE复制文字,贴到记事本,就会出现上面这段讯息。如果你的系统上装有旧的 Norton AntiVirus、Norton Utilities,就有可能会产生上面这种情形,像 Norton AntiVirus 2.0 就可能会在 98 SE上引起这个问题,主要问题就是 Symevnt.386 这个文件引起的。解决的方法只有升级你计算机上Symantec的相关产品。
      临时解决,可以参考下面的方法:
      (1)执行注册表编辑程序 regedit,删除HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\SymEvnt;
      (2)编辑 System.ini,找出 symevnt.386 所在的位置,在symevnt.386那一行的前面加上分号“;”,比如“;symevnt.386”;
      (3)重新启动计算机。
      如果还没安装完Windows就继续安装,安装完后,重新安装Norton软件,如果还是遇到同样的问题,只有更新Norton软件了。
      2.A Fatal Exception 0E Has Occurred at 0028:C02A0201...
      在安装Windows的时候,当安装程序重新启动计算机准备进入Windows时,出现A fatal exception 0E has occurred at 0028:C02A0201 in VXD IOS (04)+00001FC9。这是因为Corel CD Creator 2.0造成的,Corel CD Creator 2.0的Cdraspi.vxd这个文件和操作系统不兼容。要永远解决这个问题,需升级你的Corel CD Creator。
      暂时让Windows不出现这个错误的方法,就是找出Cdraspi.vxd文件,然后把它改名。重新启动计算机,进入安全模式,如是Win 95重新开机按F8不放,如是Win 98重新开机按Ctrl不放,计算机就会出现开机选单。
      点击“开始→查找→文件或文件夹”菜单,在名称中输入:Cdraspi.vxd,找到之后把它重新命名,怕万一以后还用得着,最好不用选择删除,可改为Cdraspi.xxx,更名之后,重新启动计算机。
      3.A fatal exception 06 has occurred at <XXXX>:<XXXXXXXX>
  在安装Windows 98的过程中,突然出现下面的讯息:A fatal exception 06 has occurred at  XXXX: XXXXXXXX原因是因为你在自动批处理文件里(Autoexec.bat),加载了防毒软件McAfee's VirusScan或是Norton AntiVirus,去掉批处理文件中的激活防毒软件的叙述,然后重新激活你的计算机,再安装Windows 98。
      在安装或升级Windows操作系统的时候,不要加载任何常驻程序(像是防毒软件),可以避免像这类意外状况的发生。
      4.A Fatal Exception 0E has occurred at 0028:C00082CD in VxD VMM(01)??
      关机或是重新启动计算机的时候,就会出现:A Fatal Exception 0E has occurred at 0028:C00082CD in VxD VMM(01) +000072CD
      原因是显卡驱动程序与操作系统不兼容引起的,所以可以到显卡制造商的网站上下载最新版显卡驱动程序来解决,更新显卡驱动程序之后就可以恢复正常。
       5.Rundll32 caused a general protection fault in module Mmsystem.dll
  在一启动进入Windows的时候经常出现:Rundll32这个程序执行无效,即将关闭。按“详细资料”键显示的内容是:Rundll32 caused a general protection fault in module Mmsystem.dll
      从经验中判断,可能的原因是System.ini这个文件中的导入(boot)区段中少了:drivers=mmsystem.dll,修改System.ini就可以解决这个问题。为什么System.ini中会少了这项叙述?通常是在使用控制平台加入新的硬件这个功能时,不正确的强迫中断安装过程,像是需要驱动程序时而又不提供正确的驱动程序,或是强迫安装中断,就有这一种的可能性。
      System.ini是纯文本文件,所以使用Windows的记事本或任何的纯文字编辑软件,打开位于C:\Windows下的System.ini文件,找到[ boot]这个区段,补上一行drivers = mmsystem.dll,存盘之后,重新开机让新的设定生效。
      如果你是使用Win98、Windows Me,有一个较方便的方法,你可以直接点击“开始→运行”菜单,输入msconfig,然后在System.ini这一页,打开boot资料夹,按“增加”,新增一行叙述:drivers=mmsystem.dll。 输入完成后,记住保存你的设定,重新开机。
      不过,以上是指RUNDLL32(或RUNDLL)caused a General Protection Fault in module MMSYSTEM.DLL,如果你错误信息对话框中的资料与此处的内容并不相符,例如并不是指向mmsystem.dll同时也不是General protection Fault,本例中的解决方法可能就不符合你的需要。造成Rundll32(或Rundll)错误的原因非常多,这个案例只是众多 Rundll错误中的一种原因而已。
      6.Rundll32 caused an invalid page fault in module MSVCRT.DLL
      执行拨号网络中的拨号联机时,出现Rundll32 caused an invalid page fault in module MSVCRT.DLL at 017f:78026778
      这可能是MSVCRT.DLL文件版本不对引起的,某软件可能把这个共享的系统文件置换成了错误的版本。从原始光盘中抽出正确的MSVCRT.DLL覆盖回去,测试是否能解决这个问题。
      所有操作系统的文件,都是压缩摆放在不同的CAB文件里,因此,假如你想要在光盘片上直接看到某个DLL文件是不可能的,因为全都压缩在CAB里,所以在 Msconfig(Windows Me)、SFC(Windows 98)的还原来源都要指向cab文件所在目录。     讲了这么多,只是想告诉你,遇到Fatal Exception这样的问题时别惊慌,不过对于错误讯息还是应该有一个基本的认识,错误讯息不是一个萝卜一个坑,什么样的错误讯息就一定是哪一个软件、硬件引起的,不会这么单纯的,有千百种的状况,所引发的错误讯息都可能是相同的,所以在实际操作中还要结合许多相关资料进行分析,才能顺利地解决问题。