Have you ever queued the wrong document for print and couldn't cancel it? Read on to find out how to easily clean up a print job that's stuck.

Stuck print jobs are those annoying ones that won't print and won't cancel either. These print jobs can get frustrating to deal with, as they take a spot in the print queue and don't allow other print jobs after them to operate. Nevertheless, like most other Windows errors, this stuck print job problem has a solution.

Canceling a Print Job

Most printers nowadays have their own interfaces or a physical button on the printer which allows you to cancel prints.

Yet, canceling a print job from Windows is more desirable because it works on all printers and more importantly, it doesn't require you to get up and walk all the way to the printer.

  1. In the Start Menu, search for Print Management. Click it to open the Print Management window.
  2. Click on All Printers. This will show a list of all the printers that you've drivers installed for.
  3. Right-click on your printer, then select Open Printer Queue.
  4. In the printer queue, select the print job or jobs you want to cancel.
  5. Right-click the highlighted print job and select Cancel.
    The printer queue can be accessed from the print management dialogue.

Normally, this should cancel the print job and remove it from the queue. If it still persists, wait a bit and try canceling it again. If this also doesn't work, it means the print job is stuck and it's time to take more aggressive measures.

Removing Stuck Print Jobs

In Windows, a built-in service called Print Spooler temporarily stores all print jobs until they're printed. These print jobs are stored by Windows as files in a folder associated with the Print Spooler service.

Luckily, when a print job is stuck in the queue, you can manually remove it from the Print Spooler. In order to achieve that, you have to stop the spooler service, delete the print jobs, and then start the spooler again.

Stopping the Print Spooler From the Services Window

Print Spooler is a native Windows service, so it can be managed from the Services window. Log into Windows as an administrator.

  1. Press Win + R on your keyboard to bring up the Run window. (You can also search for Run from the Start Menu.)
  2. Type "services.msc" (without the quotes) and press Enter. This will bring up the Services window.
  3. In the Services window, scroll down to the service labeled Print Spooler.
  4. Right-click the Print Spooler service and select Stop.
    The print spooler can be stopped from the service window.

After a short while, the Print Spooler service will stop and the status should change from Running to blank. Now it's time to delete the stuck print jobs.

  1. In Windows Explorer, navigate to C:\Windows\System32\spool. This is the Print Spooler folder. You can also enter this line below in the Explorer address bar.
            %windir%\System32\spool\
        
  2. Open the PRINTERS folder. The print jobs are all temporarily stored in this folder.
  3. Select all of the files and then delete them.

This will take care of the stuck print jobs. Now, start the Print Spooler back up.

  1. Head back to the Services window.
  2. Find the Print Spooler from the list of services, Right-click, and select Start.

With the print job removed and the Print Spooler back up, you can now start printing again.

Stopping the Print Spooler With Command Prompt

As an alternative method, you can also stop the print spooler service with code lines in Command Prompt. Read our article on getting started with Command Prompt if you want to get more familiar with the Command Prompt. Just like the previous method, you will have to stop the spooler, delete the print jobs and then start it back up.

  1. From the Start Menu, search for Command Prompt.
  2. Right-click it and then select Run as administrator.
  3. In Command Prompt, type the following line and then press enter to stop the spooler service:
            net stop spooler
        
    Once you enter this code, you'll get a response saying, "The Print Spooler service is stopping." and another one saying, "The Print Spooler service was stopped successfully." shortly after the first one.
  4. Delete the print job files from the print spooler directory. Enter the code below and press enter:
            del /F /S /Q "%windir%\System32\spool\PRINTERS\*.*"
        
    You should get a response from Command Prompt saying that some files were removed. You can also skip this step and remove the files manually from Windows Explorer.
  5. In Command Prompt, enter the code below and press enter:
            net start spooler
        
    The print spooler can also be stopped using the command prompt.

That's it! You're Printer Spooler is nice and fresh now! You can go on ahead and queue prints again.

Writing a Batch File to Stop and Clear the Print Spooler

If your print jobs have a tendency to get stuck or if you just want to save time for the next time they might get stuck, you can write a batch file to clear the Print Spooler with a click. You can read our article on creating a simple batch file to make your first batch file.

The batch file is going to include the three lines we used in the Command prompt windows so that once you run it, it'll run all three commands and clean up the Print Spooler.

Open Notepad or any other text editor you prefer. In a new file, enter the code below:

        net stop spooler
del /F /S /Q "%windir%\System32\spool\PRINTERS\*.*"
net start spooler

The net use command with parameters is used to connect and configure connections to shared resources, including printers. In the first line, you use this command with the "stop" parameter to stop the Print Spooler.

The del command deletes files or directories. The parameters /F, /S and, /Q allow this command to force delete read-only files, delete the files from all subdirectories, and do so without asking for your confirmation, respectively.

Lastly, you use the net use command once again to start up the Print Spooler.

  1. Next, head to File > Save As to save the file.
  2. Change the Save as type to All Files (*.*).
  3. Name your file and add .bat at the end so that it's recognized as a batch file by Windows. Click Save to save the file.
    You can write a batch script to save time.

Now, whenever your prints are stuck you can just run this file with a double-click to clear things up. Keep in mind that since you need admin privileges to manage services such as the Print Spooler, you have to run this batch as an administrator for it to function correctly.

Don’t Let Anything Get in the Way of Your Print

You can now get rid of the stuck print jobs and queue them again. Getting good prints, however, is another beast that you'll have to tackle.