自从Windows XP Service Pack 2发布以来,很多用户都出现了兼容性问题。本文将为你解决形形色色的各种问题。
Windows XP SP2的确在很多方面有了改进和提高,但它也可能给你带来一些麻烦,如果处理不好,甚至会让你的系统崩溃。在Microsoft公司2004年8月发布的SP2 最终版本中,不仅包含了此前的一系列补丁程序,还加入了新的安全防护功能。而这种新的安全防护功能有可能出现兼容性问题,比如,新的内存保护技术也许会让某些应用程序无法运行,而由于Windows防火墙的默认设置过于严格,某些与网络通信有关的程序也可能无法正常工作。
从SP2推出到现在已经过去了将近一年的时间,出现过的兼容性问题绝大多数都有了解决方案。按照本文给出的提示,你可以更好地享受Windows XP Service Pack 2 带来的安全性和易用性改进,而不必再担心会造成程序崩溃或系统冲突。
不过需要首先提醒你的是,有很多方案都是针对高级用户的,它们很可能需要你对注册表或者其他关键性系统文件进行修改。因此,在进行修改之前,你务必要把数据完整地备份到安全的地方。如果碰到不太明白该如何操作的地方,我们建议你最好咨询一下身边的Windows高手。
不兼容的应用程序
根据网上调查的结果显示,工具类应用程序与Windows XP SP2出现不兼容的概率最高。其后果往往是程序非法退出甚至出现蓝屏。Microsoft公司在其支持中心网站上列出了一批与SP2 不兼容的应用程序(http://support.microsoft.com/kb/884130和http://support.microsoft.com/kb/842242)。其中包含了几个安全工具,比如Black Ice入侵侦测软件和某些版本的Kaspersky Antivirus防病毒软件。这个列表中也包含了一些Microsoft自己的软件,比如Virtual PC。
冲突的解决方案
很多程序与Microsoft公司新推出的数据执行保护(Data Execution Prevention,DEP)技术存在冲突。数据执行保护 (DEP) 是一组硬件和软件技术,Window XP使用该项技术来对内存执行附加检查以防止恶意代码的入侵(可参见http://www.microsoft.com/china/technet
/prodtechnol/winxppro/maintain/sp2mempr.mspx)。出现这类冲突一般有两种解决办法,你可以从应用软件开发商那里获取程序补丁,或者关闭数据执行保护 (DEP) 。不过,一旦你关掉了数据执行保护 (DEP),你的PC就又回到了Service Pack 1的安全防护水平。
按照Microsoft公司的说法,SP2 一共解决了Windows XP中870个已知的问题(http://support.microsoft.com/kb/811113),但是在大约5000万条代码中不知还隐藏着多少未被发现的问题。本文将对SP2引起的最常见的32个故障进行阐述,并给出相应的解决方案。
升级后性能变差
网上调查结果显示,大约有24%的用户抱怨说他们在安装了SP2之后机器运行速度变慢了。对此我们在三种不同的硬件平台上进行了对比测试,在后面的插文中你可以看到测试的结果。如果你在安装SP2之后感觉PC机速度变慢,可以按照我们后面给出的提示进行一些优化。
另外18%的用户认为SP2新功能的默认设置存在缺陷。其中绝大多数问题与数据执行保护 (DEP)有关,而新的Windows防火墙也是最容易出问题的地方之一。这主要是因为在SP2中,Windows防火墙的默认设置会阻止几乎所有的网络连接。
安装
14%的用户在安装SP2的过程中就发生了问题。其中大多数是由于硬盘空间不足,这会造成安装程序显示一条错误信息然后就死掉。另外有12%的被调查用户汇报了硬件故障,比如无线LAN适配器、蓝牙棒或打印机无法正常工作。大多数公司的网络管理员都不主张员工自行升级SP2,新买来的PC往往已经预装好了Windows XP Service Pack 2,而在一台现有的机器上升级还是一件稍具技术含量的事情。个人用户可能是SP2新安全功能的最大受益者,而企业用户多半会另外配置更专业的防火墙产品。
Microsoft支持中心
如果你访问一下Microsoft的网上支持中心,可以发现最常见的问题是第三方软件与Windows防火墙或数据执行保护 (DEP)的冲突。其次出现较频繁的是安装问题,比如Windows更新功能无法正常工作或者机器不断重新启动等等。排在第三位的则是Windows防火墙自身的配置问题,通常情况下技术支持人员需要耐心地教用户如何开放某个端口。
Microsoft声称在全球范围内至少有1亿份SP2拷贝被安装,与这个数量相比,支持中心收到的技术求助还算是少的。2004年也是病毒泛滥的一年,很多防病毒软件厂商对SP2的推出大加赞赏,他们认为这是Microsoft在操作系统安全性方面的一大里程碑。
值得升级的SP2
尽管存在一些问题,但与它所带来的广泛改进相比,Windows XP Service Pack 2无疑仍然是非常值得升级的。如果你的电脑与SP2确实存在冲突,也肯定可以找到相应的解决方案。
一个很大的问题是,Microsoft公司一直在不断发布补丁程序,但它很少向用户解释这些补丁程序的真正用途。最好的例子就是Internet Explorer,即便在安装了SP2之后,它仍然存在严重的安全漏洞, jpeg/GDI+问题就是其中最著名的一个,该漏洞允许黑客通过一个经过特殊处理的jpeg文件侵入你的系统。因此,即便你安装了SP2,也不能对PC安全掉以轻心。
故障指南(一)
在接下来的篇幅中,我们将对最常见的SP2故障及其解决方案进行阐述。SP2与以前的那些补丁程序不同,它给Windows XP带来了全方位的、更深远的改进。我们建议每个Windows XP 用户都应该升级到SP2,当然在这样做之前,你应该对系统进行完整的备份。
SP2内置的Windows防火墙不仅会对Internet访问造成影响,也可能会影响局域网内的文件共享。有些通过拨号连接访问Internet 的用户可能会发现在把“文件和打印机共享”放入Windows防火墙的“例外”列表之后,他们的文件居然可以被Internet上的任何用户所访问,这当然会带来严重的安全隐患。
Microsoft公司已经针对此问题发布了一个补丁程序。Microsoft公司对这个问题的解释是:由于某拨号软件配置路由表的方式,Windows XP SP2 中的 Windows 防火墙有时会将整个 Internet 解释为本地子网。这样,如果将例外配置为“仅我的网络(子网)”范围,则 Internet 上的任何人均可以访问 Windows 防火墙例外(http://support.microsoft.com/kb/886185)。如果你将“文件和打印机共享”服务放入Windows防火墙的“例外”列表,Internet上的任何用户都能访问到你的共享文件。
在某些情况上,如果你在Windows XP SP2系统中安装并运行第三方防病毒软件或防火墙软件,会导致系统崩溃,电脑出现蓝屏,错误提示语句也相当模糊:“Stop 0x05 (INVALID_PROCESS_ATTACH_ATTEMPT)”。
造成系统蓝屏死机是因为在系统文件http.sys 中有一处代码错误,它会导致内存堆栈溢出。而触发这一错误的正是在第三方防病毒软件或防火墙软件常用到的TDI(Transport Driver Interface,传输层驱动程序接口)过滤引擎,其后果就是操作系统的堆栈被非法覆写,然后被Windows内部中断制止,造成蓝屏。Microsoft也就此问题发布了补丁程序。此问题可以参考http://support.microsoft.com/kb/887742。
在SP2的Internet Explorer中访问网站时,那些使用弹出窗口的网站可能无法被正常显示,而当你想屏蔽某些内容时可能又会发现它不太管用。
当你访问使用弹出窗口的网站时,需要在Internet Explorer中进行一些设置。一种办法是在Internet Explorer中选择“工具”“弹出窗口阻止程序”“弹出窗口阻止程序设置”(如图1所示),你可以把允许弹出窗口的网址放入“例外”列表。默认的弹出窗口筛选级别为“中:阻止大多数自动弹出窗口”,按照Microsoft的说法,这个级别可以拦截绝大多数的弹出窗口,如果你仍然被弹出的窗口所困扰,可以将筛选级别设置为“高:阻止所有弹出窗口”。不过这样一来,即便你想在原来的窗口打开新窗口也会被阻止,比方说你点击某个缩略图想放大显示,可能也会被禁止,解决该问题的唯一办法是在点击某个链接时同时按住 “Ctrl”键。对于本地的Intranet和受信任的网站区域,“弹出窗口阻止程序”是不起作用的。如果你发现将筛选级别设置为“高:阻止所有弹出窗口”之后仍然有窗口弹出,这表明你的系统很可能已经被间谍或木马程序所侵入。当某个弹出窗口被阻止时,你可以在Internet Explorer的窗口上部看到一条提示信息,这样你可以通过点击该提示条来选择“临时允许”或“总是允许”该窗口的弹出,而不用管现在的设置如何。
不过SP2内置的“弹出窗口阻止程序”并不完美,你可以做一个小实验,访问www.malware.com/flopup.html(该网站会在几秒钟内弹出若干个小窗口,这些窗口是无害的),你会发现即便采用最严格的筛选级别,仍然可以看到有窗口弹出。如果想彻底不让窗口弹出,你需要在Internet Explorer 的“工具”“Internet选项”“安全”“自定义级别”中,把“活动脚本”禁用(如图2所示)。
故障指南(二)
当你配置Wi-Fi网卡时可能会发现SP2的无线网络向导与网卡自带的无线配置工具有冲突。
Windows XP SP2 经常会把无线网络设置的控制权抢夺过来。有趣的是,我们发现在预安装好操作系统的笔记本电脑中,网卡厂商自己的无线配置工具往往有更优先的控制权。但如果出现冲突,Windows和网卡厂商自带的无线配置工具都无法给出提示信息。
这种冲突可能会造成无法预料的错误,而错误的原因还很难解释。如果你想解决这一问题,就选用其中的一种配置工具并将另一种彻底关掉。一般而言,网卡厂商自带的无线配置工具可能更容易使用而且与硬件更匹配,所以我们建议你关掉SP2的无线网络配置工具,方法是依次进入“控制面板”“网络连接”“无线网络连接”“属性”“无线网络配置”,然后取消选择“让Windows管理我的无线网络设置”(如图3所示)。
如果你使用SP2的无线网络配置向导,在某些情况下它会提示你无法建立网络连接,而此时你的无线接入点并没有故障。
这种情况通常出现在笔记本电脑中,它们通常提供了单键关闭无线网卡的功能,而Windows并不能检测出无线网卡已被关闭,它只会向你报告无法找到可接入的网络。由于Windows XP的无线网络配置向导无法判断无线网卡的状态,这时你只能通过无线网卡的LED显示灯来进行判断。而大多数网卡厂商自己的无线配置工具可以检测无线网卡的状态并在必要时给出提示,这也是我们推荐你采用厂商自带的无线配置工具的理由。
在基于Athlon 64处理器的机器中安装SP2后,可能将导致设备不断重启,重启后则又出现蓝屏,提示信息为0x000000FC(ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY)。
这个问题是由Sigma Designs的Hollywood Plus DVD解码应用软件所使用的mpegport.sys驱动程序所引起的。它与Athlon 64所使用的硬件内存保护机制发生冲突并在内存中执行错误代码。Windows XP会中断该错误代码并给出上述的错误信息提示,在默认设置下Windows XP还会重启机器。
最简单的解决办法就是更新你的mpegport.sys 驱动程序或者安装一个与SP2兼容的mpegport.sys版本。如果手头一时找不到新的mpegport.sys,可以暂时将DEP内存保护机制关闭。方法是:重新启动计算机,在BIOS信息出现后按 F8 键选择进入“安全模式”,依次单击“开始”“运行”,键入 cmd,然后单击“确定”进入命令行窗口;在命令提示符处键入bootcfg /raw “/noexecute=alwaysoff /fastdetect” /id 1,然后按 Enter 键,再重新启动电脑即可。如果你的Windows XP有多个启动条目或启动选项,则可能必须手动修改计算机中的 Boot.ini 文件。要通过修改 Boot.ini 文件禁用 DEP,需将 /noexecute 策略级别更改为 alwaysoff。此问题可以参考http://support.microsoft.com/kb/878474。
在Pentium 4系统中安装SP2失败并造成系统崩溃。
如果你的系统采用了Prescott核心和90纳米工艺的Pentium 4或Celeron D处理器,可能会出现这个问题。SP2的安装过程与某些BIOS版本的不兼容是导致该问题的原因。如果你想避免该问题,最好在安装SP2之前查清自己的计算机是否使用了上述处理器,方法是依次单击“开始”“运行”,键入 cmd,然后单击“确定”进入命令行窗口,在命令提示符处键入set PROCESSOR_REVISION,然后按 Enter 键。如果返回的16进制结果是0F33,,就说明你的系统使用了上述的处理器。 这时你需要到主板厂商的Web网站去查看你的BIOS版本是否与SP2兼容,如果需要的话,你应该在安装SP2之前升级你的BIOS。
故障指南(三)
由于没有足够的硬盘空间而导致SP2安装失败。
Microsoft声称SP2的最小系统需求为:233MHz处理器、64MB内存和1.8GB空余硬盘空间。实际上,所需硬盘空间的大小取决于SP2的安装方式。如果你从光盘进行安装,大约需要1.4GB的硬盘空间,其中要有500MB空间用来把数据从光盘复制到硬盘(在你的Windows 文件夹的ServicePackFiles文件夹中),此外还需495MB用来安装SP2自身的文件,还需要260MB用于安装过程、200MB用于uninstall文件。如果采用在线升级或者网络安装方式,所需的空间要稍小一些,因为只有尚未安装的补丁程序才会被传送过来,这样大约可以节省100MB的空间。
使用磁盘碎片整理和磁盘清理工具可以为你释放一些存储空间,此外,如果你的硬盘存在多个分区,还可以利用Symantec Partition Magic或Paragon Partition Manager这类分区工具来增加系统分区的容量。此问题可以参考http://support.microsoft.com/kb/837783。
SP2安装程序无法在笔记本电脑上启动,即便完全符合其系统需求。
即便你的电池已经充满电,你也需要在安装SP2之前将它连接到电源适配器上。通常情况下,SP2安装程序会向你提醒这一点。
尽管一切正常,但仍然会出现网络连接错误的警告信息。
这个警告信息是告诉你网络连接要么未能工作在全速状态,要么时断时续。不过,在SP2系统中,这个警告信息可能偶尔也会在没有明显原因的情况下出现。解决这个问题有两个办法,要么彻底关闭警告信息(到网络连接的常规属性中取消选择“此连接被限制或无连接时通知我”),要么手动输入一个固定的IP地址,因为我们发现此类问题仅出现于使用DHCP服务器动态分配IP地址的系统中。
SP2安装过程出错,提示atapi.sys有问题。
这个问题在安装Windows XP SP1时就出现过,看起来在SP2中仍然存在。我们的测试表明你完全可以忽略这个警告信息。你可以将atapi.sys文件改个名字