Printer won’t print, Can’t delete print jobs

The Problem

Printing in Windows 10 (and earlier) should just work, but sometimes it doesn’t. Occasionally you will send a file or page to the printer and nothing will happen. No errors, no message, nothing.

Fortunately this is a common issue for which there is a relatively simple fix.

Background

There is a folder in windows that stores current print jobs. There is also a related service called the Print Spooler. It serves as a “printer cache” to hold files until they have been successfully printed.

Unfortunately, some times the print spooler gets stupid and needs to be cleared. Making matters worse is that Windows seemingly doesn’t know there is a problem. Worse yet, you can’t simply delete the stuck files and try again, because the print spooler is in use.

The Solution

Don’t worry, there’s a script for that.

This script, which run on your computer, fixes this issue 99.8% of the time.

net stop spooler
del %windir%\system32\spool\printers\*.shd
del %windir%\system32\spool\printers\*.spl
net start spooler

How it works

net stop spooler – stops the print spooler service, which allows the files in the printer cache folder to be accessed and deleted.
del %windir%\system32\spool\printers\*.shd – deletes the shadow files for the print job,
del %windir%\system32\spool\printers\*.spl – deletes the spool files for the print job.
net start spooler – starts the print spooler service back up.

To create your own printer-spool-fix script, just copy these 4 lines into a notepad file. Just make sure when you save it, to change the “.txt” to “.bat”. This will allow the script to run by double-clicking on it.

net stop spooler
del %windir%\system32\spool\printers\*.shd
del %windir%\system32\spool\printers\*.spl
net start spooler

print-spooler-script-bat

Save it to the desktop (or wherever you want) and double-click. After a couple of seconds you should be able to print again. I hope it helped!

Leave a Reply

Your email address will not be published. Required fields are marked *