一.概述
在使用Windows98SE系统的机器上,有时会遇到这种情况,关闭计算机时系统不能正常关闭,屏幕上始终显示"正在关闭系统,请稍侯…"的提示。这种情况并不是每次都能复现,此时只能重新启动机器,启动时系统要做磁盘扫描后才能正常引导,这种现象在不同的机器上、不同的环境下发生故障的频度不同,通常有下面几类表现方式:
① 偶尔出现无法关机的现象,频率往往是3天左右一次;
② 100%出现无法关机的故障,且机器往往比较旧;
③ 新型的机器,在使用初期,特别是在没有联网的情况下,就出现无法关机的现象,而且故障往往不复现。
在解决此类问题的过程中我积累了一些实际经验,针对该问题进行归类分析、从中提炼出一些规律性的东西供大家参考。
二.WIN98SE关机问题现状
不能正常关机的问题通常发生在WINDOWS98第二版操作系统上,该问题的产生与WINDOWS98第二版操作系统有直接关系,微软已在网站上下发了相关的补丁程序,但该补丁程序只能解决部分机器的关机问题,因关机问题的原因是复杂多样的,除与操作系统有关外,还与机器的软、硬件配置,BIOS设置、网络与外设的连接等问题有关,因此只靠一个补丁程序很难解决如此复杂的问题,目前有关该问题还没有一种通用的解决方法,一般都是根据现场的具体情况具体分析可能导致关机异常的原因,通过一段时间的摸索,我们发现该问题的产生还是有一定的规律的,经过对可能产生关机异常因素的逐个屏蔽,就有可能找到问题的答案。
三.关机的过程
当我们选择关闭WINDOWS98时,实际上是调用了WINDOWS中的EXITWindowsEX函数来结束用户的进程,在桌面上我们单击鼠标右键,选择新建快捷方式,在命令行中键入 RUNDLL32.EXE user.exe,exitwindows 取名"快速关机",确认后即可建成一个关机的快捷方式,EXITWindowsEX有几个参数可供选择,EWX-FORCE表示强行关闭WINDOWS,关闭时不提醒保存其它应用程序的运行结果。EWX-LOGOFF表示注销当前的用户进程,EWX-SHUTDOWN表示关闭WINDOWS,EWX-REBOOT表示重新启动WINDOWS。
正常关闭WINDOWS时,关机程序向各个应用程序发出一个关机消息,如果返回的消息均为允许,则说明这一部份已具备关机条件,如某一应用程序返回的消息为不允许或没有回应,则不能关机。
WINDOWS98在关机时要执行以下任务:
① 完成磁盘写操作;
② 清空磁盘缓存;
③ 调用关机命令关闭所有的应用程序;
④ 将所有保护模式的驱动程序变为实模式。
四.引起关机故障的因素及解决方法
当初次出现关机异常现象时,应仔细回顾自己做了那些操作,从新安装的驱动或硬件入手,这样比较容易找到故障原因 ,如果不能够确认是那些新的因素引起的关机故障,就只能根据机器的具体情况进行具体分析,下面我们从几个方面讨论可能引起关机故障的原因和解决方法。
1 WINDOWS98 SE操作系统的问题
VXD文件问题
将WIN98原盘中的CVOMM.VXD VDMAD.VXD, CONFIGMG.VXD, VDD.VXD, NTKREN.VXD, VFLATD.VXD 文件安装到C:\WINDOWS\SYSTEM\VMM32目录下,这些VXD文件可以解决许多死机、启动出错、VMM错误、鼠标异常等问题,WINDOWS98在安装过程没有将这些VXD文件安装到系统中,导致一些最新的硬件驱动无法正常安装,造成系统工作不稳定。
上述VXD文件的安装方法:打开开始菜单--程序--附件--系统工具--系统信息,选择"工具"下的"系统文件检查器"将上述VXD文件提取到C:\WINDOWS\SYSTEM\VMM32目录下,然后重新启动计算机。
检查 BOOTLOG.TXT
C盘根下的BOOTLOG.TXT是开机注册文件,它里面记录了系统工作时失败的记录,保存一份系统正常工作时的记录,与出问题后的记录相比较,找出有问题的驱动程序,在WIN.INI SYSTEM.INI 中找到该驱动对应的选项,或在注册表中找到相关联的对应键值,更改或升级该驱动程序,有可能将问题解决。
BOOTLOG.TXT文件通常放在C盘根下,很多语句都是成对出现的,注意查找与Terminate = 对应的ENDTerminate = 条目,正常状态下BOOTLOG.TXT的最后一行应为EndTerminate = User 或 EndTerminate = Kernel 如最后一行为如下内容则有可能的原因是:
EndTerminate = query drivers 内存管理有问题。
EndTerminate = unload network与config.sys 中的实模式网络驱动有冲突EndTerminate = reset display 显示驱动或BIOS中的有关显视选项有问题。
EndTerminate = RIT 声卡、鼠标等驱动存在问题。
EndTerminate = Win32 使用32位的应用程序产生的问题。
3 补丁程序
针对WINDIWS98第二版的关机问题,微软公司下发了一个补丁程序,该补丁程序可以解决部分的关机问题
2 硬件问题
将BIOS升级到最新版本
WINDOWS98第二版增加了许多新的功能,如:ACPI、APM等,但并不是所有的主板BIOS都支持这些功能,同样BIOS对其他新款硬件的支持也会存在配合问题,因此在出现关机问题时可到相关网站上索取最新版本的BIOS试一试。
PCI BUS 属性中的 IRQ 指导问题
将PCI BUS 属性中的 IRQ 指导选中时,系统允许几个PCI设备共享一个中断,但如果BIOS不支持这种共享方式,则无论是否有没有设备在共享一个中断,都会引起冲突使系统不正常,此时可以将IRQ中断指导关闭试一下,方法是:控制面板--系统--设备管理--系统设备--PCI BUS--属性--IRQ 指导 将使用IRQ指导前的对勾去掉即可。
显卡设置
某些显卡在切换到实模式下时不能得到中断,引起关机异常。此时可调整BIOS中的中断设置,或升级显卡驱动,如还不能解决问题可更换另一种显卡,以确定是否是因为显卡的原因导致关机异常。
与SIS芯片组的兼容性
WINDOWS98第二版与某些使用SIS芯片组的主板如:SIS530、SIS620存在关机死机问题,是一个比较常见的问题,该问题属于使用SIS芯片组的主板与WINDOWS98第二版存在一定的兼容性问题,但应该指出,不同厂家设计的主板对关机问题的反映程度是不同的,有些反映很严重,有些则很少发生此问题,因此在解决问题时应针对情况到主板厂商的网站上下载相应的补丁程序。
外设及扩展板卡
有时添加了某些新的设备后会引起系统资源冲突,导致不能正常关机。这种情况往往安装的设备工作都正常,引起关机异常的原因比较复杂。实践中曾遇到过某种扫描仪驱动程序,在与网络系统同时应用会产生关机问题,但只要两者不同时使用则不会出现问题。
另一个例子是安装了一款FAX卡后,选择关机后主机不能正常关闭,通过反复调整地址中断均不能解决问题,即使在安全模式下关机仍不正常,后更换了另一款传真卡后问题才得到解决。
BIOS 防写开关
有些品牌机为了防止CIH病毒的侵入,设置了BIOS保护开关,对于这类机器,当你增加或去掉硬件时,由于WIN98 的即插即用功能,系统都试图将硬件的改变信息记录在BIOS的ESCD中,以便系统在每次启动机器时调用ESCD中保存的设备配置信息。如果在你更改硬件设备时,将BIOS写保护开关处于写保护状态,则系统将无法将信息写入ESCD中,此时BIOS与系统之间无法进行交流,会造成系统的紊乱,通常会出现蓝屏报错、死机、关机不正常等现象,同样,在这种情况下安装WIN98系统或其他应用软件也会出现同样的问题。
解决方法:只需在更改硬件、或安装软件时将此类BIOS 写保护开关处于非写保护状态即可。
3 软件因素
BIOS设置
我们知道WINDOWS98在启动和关闭时要与BIOS进行通讯调入或写入一些数据,如果在关机过程中,这种数据的交换受阻或得不到回应就有可能引起关机故障,这时可通过改变下列选项试一试:
硬件中断设置:许多硬件如声卡、显卡、网卡由于它们的中断地址分配冲突,会使设备工作不正常,同时导致关机时不能正确回应关机请求,这时可以调整BIOS中的中断分配,使设备处于正常工作状态,从而解决关机问题。
U**设置:改变一下BIOS中的U**选项,看关机故障是否能解决,U**设置不对引起关机异常是WINDOWS98第二版常见的故障,有些主版当把BIOS中U**选项设为DISABLE时,无论是否有U**设备,都会影响关机的正常进行。这种故障通常可以100%的复现。
APM设置:BIOS中的"高级电源管理"选项经常会对休眠、关机等问题产生影响,打开控制面板──系统──设备管理──系统设备,双击"高级电源管理支持"在"常规"卡片选项中,将"在此硬件配置文件中禁用"选中,重新启动计算机,看问题是否能得到解决,如不能解决再尝试将"设置"卡片"疑难解答"中的两项选中,再对关机进行测试。
为了判断是否是因为BIOS的原因引起的故障,可将系统配置成直接与硬件设备通讯而忽略即插即用功能,这样做会导致一些报错,某些硬件将不能使用,但有助于对问题的分析,如果这时关机问题不再出现,则有可能是BIOS引起的故障,将问题分析的重点放在BIOS上,具体做法是将C:\WINDOWS\STSYEM\BIOS.VXD改名并重新启动机器。
应用程序引起的问题
一些应用程序经常会将一些TSR(常驻内存)程序放在WINDOWS的启动组中,这些常驻内存的程序单独运行时也许不会有问题,但当系统中同时存在多个常驻内存程序时就可能引起冲突,特别是系统中同时装有OFFICE、LOTUS NOTES、ERP、系统等大型软件时,问题会变的很复杂,给问题的查找带来很大的困难,解决这类问题时首先应排除掉系统中的常驻内存程序,逐个屏蔽应用软件可能带来的影响,最终找出问题的原因。
我们可以在开始──运行菜单中运行MSCONFIG命令,"将系统配置实用程序"菜单调出,在"常规"卡片中选择"诊断启动"通过查看其它菜单我们可以看到,该选项只允许启动时加载CONFIG.SYS和AUTOEXEC.BAT两个文件,重新启动后看问题是否得到解决,这样可以有效的屏蔽掉大部分常驻内存程序的影响,同时我们还可以通过选择"选择性启动"配合其它卡片的选项,逐个屏蔽可疑因素,缩小故障范围。
当你检查SYSTEM.INI文件时,请多留意[386ENH]内的内容,对开始句为DEVICE=,结尾为.386的语句都应重点检查,可通过屏蔽掉相应的设备驱动逐步找到原因。
声音文件引起的问题
如果我们为退出WINDOWS定义了声音文件,当声音文件损坏时系统会因为声音文件得不到响应而不能正常执行关机程序,这种故障只要重新定义声音文件或将定义取消即可做出判断。
禁用快速关机选项
WINDOWS98第二版的快速关机选项,有时会导致关机异常,可通过选择:开始──程序──附件──系统工具──系统信息──工具──统配置实用程序──高级选项中,将"禁止快速关机"项选中即可。
映射网络驱动器对关机有很大的影响
分析一下当WINDOWS发出关机命令时,网络要完成那些进程,首先要结束在网上运行的应用程序,断开映射的驱动器,然后释放本机的IP地址,最后要回应WINDOWS的关机请求,如果没有得到回应则可能关机不能顺利执行,或者是执行后不能正确回应,最终使关机进程无法进行下去。
病毒原因
同其它问题的诊断一样,我们首先应排除病毒因素引起的不良后果,再对系统进行诊断。
(出处:热点网络)