各位“老鸟”、“菜鸟”已经使用Windows 2000相当一段时间了,它的易用性和稳定性深受大家喜爱。但是可能会在使用它的过程中遇到点烦恼――在“瘟酒吧”下软关机正常,安装了Windows 2000后微机反而不能自动关闭电源了。本文将就这个问题展开讨论、调查,并列出解决方案及解决问题实例。相信不论“老鸟”、“菜鸟”都会得到些借鉴和启发。
◆Windows 2000软关机异常可能的原因及相应的解决方案
1.电源是AT结构而不是ATX结构
连“菜鸟”可能对笔者都不满了:AT电源和ATX电源俺还区分不开吗?其实笔者想强调的是:一般来说使用AT电源的微机不能软关机,但是某些大公司(例如惠普)早期生产的微机使用的是AT电源,在Windows 98下也能软关机,而在Windows 2000下不能。因此不能以能否软关机来判断电源类型。如果你的微机的电源是AT电源,在Windows 2000下不能软关机是正常的。解决办法是更换AT电源为ATX电源。具体案例见下一页问题调查和解决方案实例列表的微机一。
2.CMOS设置不当
安装Windows 2000时没有开启ACPI功能(ACPI设置成Disabled),造成无法软关机,甚至造成安装不成功。
安装Windows 2000之前,进入CMOS设置,选择“POWER MANAGEMENT SETUP” ,把ACPI Function设置成Enabled即可。
3.和BIOS及ACPI有关
软关机异常大多和BIOS及ACPI有关,本文讨论的重点也在这里。
BIOS(基本输入/输出系统)是一套软件,操作系统(或安装程序)可以通过它与计算机的硬件进行通讯。
ACPI(高级配置和电源接口)是BIOS工作的最新标准。Windows 2000不仅支持兼容ACPI的BIOS版本,也支持一些基于过去的电源管理(APM)和即插即用设计的BIOS版本。
而有些基于ACPI的BIOS版本与标准并不兼容,但ACPI BIOS的版本号越高,就越有可能与标准兼容。
那么如何确定Windows 2000是否兼容ACPI呢?这也是解决软关机问题的关键。
在Windows 2000下,右键单击“我的电脑”选择“属性”,进入“系统属性”,再选择“硬件”,点击“设备管理器”,双击“计算机”,查看计算机型号:
如果是“Advanced Configuration and Power Interface(ACPI) PC”(如图1),或者是“ACPI Uniprocessor PC”(如图2),则说明Windows 2000兼容ACPI,同时你的微机能软关机。
如果是“Standby PC”(如图3),或者是“MPS Uniprocessor PC”(如图4)则说明Windows 2000不兼容 ACPI,同时你的微机不能软关机。
如果计算机有多个CPU,则计算机型号可能有ACPI Mutiprocessor PC、MPS Mutiprocessor PC,微机多数为单CPU,这里就不讨论多CPU的情况了。
其实现在的大多数微机是支持ACPI功能的(在http://www.microsoft.com/hwdev/acpihct.htm下载ACPI HCT v1.61.exe,可以测试BIOS是否支持ACPI功能),在开机出现PCI和ISA设备列表时按下“Pause”键,注意观察是否有ACPI字样;或者进入CMOS设置,选择“POWER MANAGEMENT SETUP”,观察是否有ACPI Function。如果有说明你的微机是支持ACPI功能的,之所以不能软关机是因为Windows 2000的安装过程中没有启用ACPI功能。为什么会出现这种情况呢?用记事本打开Windows 2000安装程序的i386目录下的Txtsetup.sif文件,查找到ACPIEnable这一段,
ACPIEnable = 0,在Windows 2000安装过程中不启用ACPI功能,不管BIOS如何;
ACPIEnable = 1,在Windows 2000安装过程中启用ACPI功能,假如微机的BIOS支持ACPI功能;
ACPIEnable = 2,在Windows 2000安装过程将根据GoodACPIBios list、ACPIBiosDate、NWACL来决定是否启用ACPI功能;
ACPIBiosDate = mm,dd,yyyy 假如BIOS日期在这个日期之后,即使BIOS不在GoodACPIBios list中,Windows 2000安装过程也将启用ACPI功能。
在Txtsetup.sif中,ACPIEnable及ACPIBiosDate的默认设置如下:
[ACPIOptions]
ACPIEnable = 2
ACPIBiosDate = 01,01,1999
因此,如果你的BIOS不在GoodACPIBios list中,BIOS日期在01,01,1999这个日期之前,在安装Windows 2000过程中就没有启用ACPI功能。对于这种情况用如下两个方案解决。
方案一:升级BIOS后再安装Windows 2000。BIOS的版本号越高,就越有可能与标准兼容,Windows 2000安装过程启用ACPI功能的可能性越大。
对“老鸟”来说,升级BIOS就象安装个软件那么简单,可对“菜鸟”来说就不一定了。而且,有可能当前的BIOS已经是最高版本了。
方案二:把Windows 2000安装程序的i386目录拷贝到硬盘,去掉该目录下Txtsetup.sif文件的只读属性,记事本打开它,把ACPIEnable = 2改为ACPIEnable = 1,保存后关闭文件,然后运行winnt(或winnt32)安装Windows 2000( 在DOS下安装Windows 2000时要首先运行Smartdrv.exe,否则安装过程将很漫长)。具体案例见问题调查和解决方案实例列表的微机二。
4.没有启用高级电源管理支持
这种情况通常是Windows 2000不兼容ACPI,却支持APM(高级电源管理),只要启用高级电源管理即可解决软关机问题,见方案三。
方案三:打开“控制面板”中的“电源选项”,选择“高级电源管理”选项卡,
在“启用高级电源管理支持”选项框上打上对钩“√”(如图5),然后单击“确定”。 具体案例见问题调查和解决方案实例列表的微机三。
◆问题调查和解决方案实例列表
在开机时按“Pause”键可观察BIOS版本和BIOS日期,也可从注册表中观察,方法是:运行注册表程序Regedit,在Windows 98下查找BIOSDate、BIOSName;在Windows 2000下查找SystemBiosDate、systemBiosVersion。
以下表格给出的三台微机是比较典型的案例,上文提到的方案一的升级BIOS的方法笔者没有收集到具体的案例,读者可根据具体情况来分析解决自己的问题。
欢迎大家来信(cy04yjz@zpeb.sinopec.com.cn)和笔者讨论、交流。