前几天,太太的笔记本遇到了spoolsv.exe占cpu 99%的的问题,要我帮她重新安装操作系统。我是懒得重装的,所以在网上搜索了一下:大部分关于这个问题的文章都是将相关打印后台服务给禁用解决的,可是这样就不能打印了,岂不有点因噎废食? 后来从国外网站上找到了这篇文章:tim's journal: spoolsv.exe hogging 99% of cpu - the fix 解决方法其实很简单,假设你已经使用了杀毒软件排除了病毒和已经使用防间谍软件排除了恶意软件的影响:只要清空C:/WINDOWS/system32/spool/PRINTERS 目录下所有的文件即可。而原因在Microsoft网站上也有文档说明:Windows 后台打印程序没有删除打印作业后台文件导致的打印程序可能会反复地尝试对该打印作业进行后台处理解决方案:为避免发生此问题,请不要在打印后台文件位于 %Systemroot%/System32/Spool/Printers 文件夹中时更改它的属性。 要解决此问题,请删除只读属性,然后将该后台文件从 %Systemroot%/System32/Spool/Printers 文件夹中删除。要删除只读属性,请右键单击 Windows 资源管理器或我的电脑中的后台文件,单击属性,单击清除只读复选框,然后单击确定。有关如何在 Windows 2000 中删除文件的更多信息,请单击开始,单击帮助,单击索引选项卡,键入删除,然后双击删除文件主题。 2006-09-26更新:根据flyingrufei反馈的另外一个解决反复出现spoolsv这个问题方法:打印机有个后台管理的选项可以控制。将spoolsv服务打开(具体是在我的电脑---管理----服务---PRINT SPOOL,启动),然后打开控制面板的打印机项目,右键打开打印机属性---高级,把后台打印改为直接打印---OK!
后记: 一次和建硕聊天的时候,从也在微软工作的Wendy那里了解到: 这个问题其实从Windows 2000开始就有了,但到XP一直没有解决。而微软也有相关的帮助文档,可惜就是在网上无法被用户搜索到,因为文档中没有任何关于spoolsv占CPU 100%之类的现象说明,所以说:开发者和用户之间的想法根本就是两回事儿。