取消打印任务可以去「设备和打印机」的队列窗口右键取消,也能在管理员 PowerShell 里执行 Get-Printer | ForEach-Object { Get-PrintJob -PrinterName $_.Name | Remove-PrintJob } 一次清空本机所有队列;只想清一台、其他打印机的任务还要留着,就用 Remove-PrintJob -PrinterName "打印机名" -ID 编号 按 ID 逐条删。
按钮点了没反应、命令也删不掉时,多数是打印后台处理程序没释放作业、打印机处于脱机或暂停,或者同一台设备被多个端口重复指向,按顺序排查就能恢复。
适用系统:Windows 10 / Windows 11;最后更新:2026-11-14。
取消打印任务后队列里的文档就是不消失,按钮和命令都删不掉怎么办
最常见的画面是:右键点了「取消」,任务状态变成 正在删除 就一直停在那里,队列窗口关掉重开还在;有的机器上点「取消所有文档」干脆没有任何反应。
另一类提示来自服务层,在服务窗口停 Print Spooler 时报 错误 1053:服务没有及时响应启动或控制请求,这通常意味着 spoolsv.exe 还锁着 C:\Windows\System32\spool\PRINTERS 里的作业文件。
先按下面这张表对号入座,再决定从哪一步动手。
| 具体现象 / 位置 | 常见原因 | 建议直接看 |
|---|---|---|
| 队列里任务点了取消仍挂在列表上 | 打印后台处理程序没有释放作业,spoolsv.exe 一直在占用 | 先看方法2,用命令按 ID 逐条删 |
队列窗口顶部显示 脱机 或 暂停 | 打印机状态没恢复,先删任务也会被重新排队 | 先看方法1,把状态恢复成就绪再删 |
| 命令删除报错或提示找不到打印机 | 打印机名不准确,或作业文件被 spooler 锁定 | 看方法4,停掉服务再清 C:\Windows\System32\spool\PRINTERS |
| 重启电脑后旧文档又自己开始打印 | 任务重复排队,多半是端口被重复指向 | 看方法5,检查并统一端口 |
| 清干净后没几天又卡住 | 后台打印设置或驱动异常导致作业反复回队 | 看方法6,做防复发设置 |
队列卡住的位置不同,处理顺序也不同,看清属于哪一类再往下走,比从头盲试省时间。

方法1 先恢复脱机暂停状态再取消卡在队列里的任务
队列窗口能打开、任务也能选中,就是删不掉时,先看状态栏。打印机处于脱机或暂停时,删掉的任务会被立刻重新排回队列,先恢复成就绪再取消,成功率明显更高。
步骤 1:打开目标打印机的队列窗口
按 Win + R 输入 control printers 回车,打开「设备和打印机」,双击出问题的那台打印机就能看到队列;也可以走 设置 → 蓝牙和其他设备 → 打印机和扫描仪 → 选中设备 → 打开打印队列。
步骤 2:取消脱机与暂停勾选
队列窗口顶部若显示 脱机 或 暂停,先别删任务。点「打印机」菜单,把「脱机使用打印机」和「暂停打印」前面的勾去掉,状态会回到 就绪。
步骤 3:在设置里重新搜索打印机
进入 设置 → 蓝牙和其他设备 → 打印机和扫描仪,点「添加设备」让系统重新搜一遍这台机器,能搜到说明连接本身正常。

步骤 4:在设备管理器里核对打印队列
按 Win + X 选「设备管理器」,展开 打印队列 节点,看这台设备图标上有没有黄色感叹号,有感叹号说明驱动层还有问题。

步骤 5:扫描检测硬件改动
在设备管理器顶部点「操作」菜单 → 「扫描检测硬件改动」,让系统重新识别一次打印设备,感叹号一般会消失。

步骤 6:再取消卡住的任务
状态恢复成 就绪 后,右键卡住的任务 → 取消。一次没反应就等 10 秒再点一次,别连着连点,连点会让同一份文档重复入队。
方法2 用 PowerShell 逐条删除指定打印机的残留任务
只清某一台、其他打印机的队列还要保留时,用管理员 PowerShell 按 ID 逐条删最稳妥,删哪一条由你决定。
步骤 1:以管理员身份打开 PowerShell
开始菜单搜 PowerShell,在结果上右键选「以管理员身份运行」,窗口标题栏带「管理员」三个字,命令才有权限执行。
步骤 2:列出本机所有打印机
执行 Get-Printer,输出里每一行是一台打印机,记下出问题那台的 Name,名字里的空格和符号要一模一样。
步骤 3:查看残留作业编号
执行 Get-PrintJob -PrinterName "打印机名",输出中的 Id 就是作业编号,列表里有几条就说明队列里还挂着几个任务。
步骤 4:按 ID 逐条删除
执行 Remove-PrintJob -PrinterName "打印机名" -ID 1,把 1 换成实际编号重复执行,直到再查 Get-PrintJob 时列表为空。
步骤 5:名字不对时取准确名称
报「找不到指定的打印机」,多半是名字带了空格或和显示名不一致。执行 Get-Printer | Format-List Name,复制输出的名称再重试。
方法3 一条命令清空本机所有打印队列
几台打印机同时卡住,又确认没有等着打的重要文档,用管道命令一次清空最快,省掉逐台切换的功夫。
步骤 1:执行清空命令
在管理员 PowerShell 里执行 Get-Printer | ForEach-Object { Get-PrintJob -PrinterName $_.Name | Remove-PrintJob },命令会把每台打印机的作业依次取出来删掉。
步骤 2:验证队列是否清空
再执行 Get-Printer | ForEach-Object { Get-PrintJob -PrinterName $_.Name },没有任何输出就说明所有队列都空了。
步骤 3:单独补删报错的那台
管道执行中途某台报错会自动跳到下一台。对报错的那台单独执行 Remove-PrintJob -PrinterName "名字" -ID 编号 补删即可。
步骤 4:刷新队列并打印测试页
回到打印队列窗口按 F5 刷新,列表空掉即生效,再打一份测试页确认打印链路正常。
注意
这条命令会清掉本机所有打印机的待打印文档,执行前确认没有还在等待的重要作业;清空后无法恢复。
方法4 停止后台处理程序并手动清理 PRINTERS 目录
命令删完队列里又冒出来,或者服务怎么都停不掉,说明作业文件被 spoolsv.exe 锁着,得先停服务再删文件。
步骤 1:停止打印后台处理程序
在管理员 PowerShell 或 CMD 里执行 net stop spooler。服务名要写 spooler,spoolsv 是进程名,写成它执行会报 错误 1060:服务名无效。
步骤 2:删除 PRINTERS 里的残留作业文件
打开 C:\Windows\System32\spool\PRINTERS,把里面的 .SPL 和 .SHD 文件全部删掉;看不到扩展名就在文件资源管理器「查看」里勾上「文件扩展名」。
步骤 3:文件被占用时换个方式再停服务
提示文件正被占用,说明服务没停干净。按 Win + R 输入 services.msc,找到 Print Spooler,把启动类型临时改成「手动」后再停一次。
步骤 4:重新启动服务并确认队列为空
执行 net start spooler 把服务开回来,启动类型记得改回「自动」,再打开打印队列确认里面已经没有残留文档。
注意
PRINTERS 目录里的 .SPL 和 .SHD 就是待打印作业,删除不可恢复,删前确认没有还要打印的文档;停服务期间所有打印机都无法使用。
用「软领打印机驱动修复大师」查看打印队列并确认卡住的设备状态
命令清过、服务也重启过之后,队列里还挂着哪些任务、哪台设备显示脱机,需要一个地方一眼看清。软领打印机驱动修复大师的打印机队列功能会列出已连接的打印机和它们的实时状态,比如某台显示「脱机」,就能判断问题出在哪一台;常用的那台还能直接设为默认打印机,需要接到新机器上时也可以在这里添加打印机。删任务前先对一下设备名和状态,能避免在命令里删错队列。

软领是知名国产软件品牌,20 年技术沉淀、服务千万用户,官网 wyouhua.com 直接下载,安装无捆绑勾选项。软件里可以点客服按钮联系真人客服,共享打印机或驱动反复异常这类复杂情况,还能安排工程师远程协助。

方法5 检查端口配置解决任务重复排队
清完没几天,同一份文档在队列里出现两条记录,多半是同一台打印机被多个端口同时指着,把端口统一成一个固定端口就能解决。
步骤 1:打开打印机属性里的端口页
进入 控制面板 → 设备和打印机,右键目标打印机 → 打印机属性 → 端口,这一页列出系统里所有可用的端口类型和地址。
步骤 2:看当前勾选了哪些端口
勾选栏里出现 WSD 字样,或者存在多条含同一个 IP 的条目,就说明这台设备被重复指向,作业会被投递两遍。

步骤 3:新建标准 TCP/IP 端口
点「添加端口」→ 选 Standard TCP/IP Port → 新端口,输入打印机的固定 IP,IP 可以从打印机自检页或路由器后台的设备列表里查。
步骤 4:只保留新建的这一个端口
回到端口页,把旧端口前面的勾全部取消,只留刚建好的 Standard TCP/IP 端口,一台设备对应一个端口。
步骤 5:打印测试页确认
打一份测试页,看队列里是不是只出现一条记录,不再冒出第二份同样的任务。
方法6 关闭后台打印并更新驱动防止队列再次卡死
队列能清干净,但过几天又卡住时,就要从后台打印设置和驱动版本上做防复发处理。
步骤 1:改掉后台打印方式
打印机属性 → 高级,取消勾选「使用后台打印,以便程序更快地结束打印」,改成「直接打印到打印机」,作业会直接送往设备,减少在队列里堆积的机会。
步骤 2:确认没有勾选保留文档
同一个页面上检查「保留打印的文档」没有勾上,勾着的话作业打完还会留在队列里占用文件,时间一长又变成删不掉的残留。
步骤 3:更新打印驱动
设备管理器 → 打印队列 → 右键设备 → 「更新驱动程序」,也可以去厂商官网下载对应型号的驱动手动安装,驱动版本对不上时队列最容易反复卡住。
步骤 4:连打几份多页文档验证
连续打印几份多页文档,观察队列里的任务能不能逐条自动消失,不再需要人工取消,就说明设置生效了。
大家常问
取消打印任务后队列里的文档删不掉怎么办?
先看队列窗口顶部是不是显示 脱机 或 暂停,是的话在「打印机」菜单里取消勾选,状态回到 就绪 再右键取消。还不动就以管理员身份运行 PowerShell,先 Get-PrintJob -PrinterName "打印机名" 拿到 Id,再用 Remove-PrintJob 按 ID 删。
执行 net stop spooler 提示服务名无效是怎么回事?
服务名要写 spooler,Print Spooler 是它的显示名,spoolsv 是进程名,写成 net stop spoolsv 会报 错误 1060:服务名无效。确认是在管理员权限的窗口里执行,普通窗口会因为权限不够直接失败。
C:\Windows\System32\spool\PRINTERS 里的 .SPL 文件提示被占用删不掉怎么解决?
说明 spooler 没有停干净。先执行 net stop spooler,再到 services.msc 里把 Print Spooler 的启动类型临时改成「手动」并停止服务,然后再删 .SPL 和 .SHD;删完把启动类型改回「自动」并执行 net start spooler。
Remove-PrintJob 提示找不到指定的打印机怎么处理?
打印机名必须和 Get-Printer 输出里的 Name 完全一致,含空格时要加英文双引号。用 Get-Printer | Format-List Name 取准确名称后重试;共享打印机要填共享名,填成本机直连名同样会找不到。
打印后台处理程序 spoolsv.exe 占用一直掉不下来是哪里出了问题?
通常是有作业卡在 C:\Windows\System32\spool\PRINTERS,或者某台打印机端口重复指向、作业不停回队。先停服务删掉残留的 .SPL 和 .SHD,再按方法5把端口统一成一个固定的 Standard TCP/IP 端口。
推荐阅读
相关推荐

提示