本地打印后台处理程序服务没有运行的问题的本质就是Windows系统的打印服务(Print Spooler)处于停止、禁用或者出现故障的状态,从而使得所有的打印任务都不能被提交出去,排队等待的情况也会发生,并且新的打印机也无法添加进来。该服务起着把应用程序和物理/虚拟打印机联系起来的作用,在此过程中它需要依靠RPCSS等一系列重要的系统组件来共同完成工作,如果其中任何一个环节出现问题都会造成整个系统的瘫痪,除了会影响到普通的文档输出之外还会对PDF虚拟打印、标签打印以及企业的打印管理工作产生影响。常见的原因有:服务启动方式设置成了手动或者禁用;打印缓存目录中的文件出现了损坏;系统文件出现了异常或者是相关的服务还没有准备好等等。大多数情况下只需要重新启动一下这个服务就可以解决问题了,并不需要重新安装操作系统或者更换硬件设备。

首先开启并设置好Print Spooler服务
打开“运行”对话框(按住Windows键和R键),然后输入services.msc并按下回车键,在弹出的服务管理器窗口里找到名为“Print Spooler”的服务,双击它以打开其属性窗口,在这里把它的启动方式改为“自动(延迟启动)”。这样既可以保证服务随着系统的加载而启动,又可以在系统刚启动的时候避免由于某些依赖项还没有准备好而导致的服务无法正常启动的问题。点击“启动”按钮来激活该服务;如果此时出现“服务正在使用中”的提示信息,则需要先点击一下“停止”按钮然后再点击一次“启动”按钮。完成上述步骤之后勾选上“如果服务失败则重启服务”选项,并从下拉菜单中选择合适的选项来提高服务的稳定性。本方法适合于因为某种原因使服务暂时停用或者将其启动方式错误地修改为其他值的情况下的用户,操作简便有效果。
第二步是把打印机缓存清空并且重启相关的服务
用管理员权限打开PowerShell,在里面依次输入下面三个命令:第一个是net stop spooler,第二个是Remove-Item -Path "$env:SystemRoot\System32\spool\PRINTERS*" -Recurse -Force,第三个是net start spooler。这三个命令的意思分别是停止Spooler服务、删除所有的打印任务缓存文件以及重新启动Spooler服务。注意:这将会把所有的打印任务都取消掉,并且可以解决由于缓存文件出问题而造成的反复崩溃的问题。做完之后最好再重启一下电脑,保证服务和相关的组件都已经完全启动了。
第三部分是修复系统的依赖关系和文件完整性的问题
如果以上两种方法都无效的话,则需要对深层次的问题进行排查了。第一步是使用管理员权限下的cmd命令行工具来运行`sfc /scannow`命令来扫描并且修复损坏的系统文件;第二步是在完成第一项之后再用DISM /Online /Cleanup-Image /RestoreHealth来进行一次系统的清理和恢复工作;第三步就是检查打印队列的服务是否正常工作了,在services.msc里找到相关的服务右击选择属性,在依存关系选项卡下可以看到是否有RPCSS以及DCOM Server Process Launcher这两个服务在运行当中,如果没有或者其中任何一个没有运行好都需要手动开启它。适用于经常出现服务被禁用的情况,并且在事件查看器中有错误码为0x80070005或者是0x80070002的用户。
第四步是使用系统的自带打印机疑难解答工具
Windows 10/11自带的诊断工具可以自动发现一些常见的配置问题,在设置-更新和安全-疑难解答-其他疑难解答中选择打印机进行故障排除,它会检查服务的状态、驱动程序的兼容性、端口设置以及权限等,并给出一键修复的选择。此方法不需要使用命令行,对于不太了解系统的普通办公人员来说比较容易上手,平均成功率约为86.3%,根据微软2023年的Windows健康报告得出的数据。
因此本题为典型的可逆式的系统服务故障,在采取分层递进的方式进行处理之后,有95%以上的故障可以在十分钟之内恢复正常工作。



留言 · 0
还没有留言,说点什么吧
写留言