Discussion:
Print Job will not delete
(too old to reply)
Michael Dobony
2010-03-09 14:41:56 UTC
Permalink
Ok, why does it take forever to delete a print job? The printer ran out of
black ink and I canceled and deleted the job. An hour later the job was
still deleting. This seems to be a common problem with all versions of
Windows. It also prevents one from getting on with other print jobs.

Mike D.
Lem
2010-03-09 15:32:07 UTC
Permalink
Post by Michael Dobony
Ok, why does it take forever to delete a print job? The printer ran out of
black ink and I canceled and deleted the job. An hour later the job was
still deleting. This seems to be a common problem with all versions of
Windows. It also prevents one from getting on with other print jobs.
Mike D.
It's not a common problem, but it does happen from time to time. See
http://support.microsoft.com/kb/946737

Instead of creating the command script described in the KB article, you
can open a Command Prompt window and just enter the commands manually.
However, if you create and save the command script, you can put a
shortcut to it on your desktop and use it whenever you have a stuck
print job.

Note: if you are running Windows XP Fax services, the script needs to be
modified; if you run the commands manually, you'll see that the Fax
service depends on the Spooler service and thus stops when you stop the
spooler and must be restarted after you restart the spooler.
--
Lem

Apollo 11 - 40 years ago:
http://www.nasa.gov/mission_pages/apollo/40th/index.html
John John - MVP
2010-03-09 15:41:16 UTC
Permalink
Post by Michael Dobony
Ok, why does it take forever to delete a print job? The printer ran out of
black ink and I canceled and deleted the job. An hour later the job was
still deleting. This seems to be a common problem with all versions of
Windows. It also prevents one from getting on with other print jobs.
It's always been like that on NT versions. Stop the Spooler service
and then delete the files in the %Systemroot%\system32\spool\PRINTERS
folder and then restart the Spooler service again. From the Command Prompt:

net stop spooler
del /q %SystemRoot%\system32\spool\printers\*.*
net start spooler

MVP Pegasus has often posted this little batch file where he has added a
ping command to delay the batch commands to allow more time for the
spooler service to stop and start. You can use this batch file to do
the job for you:

@echo off
echo.
echo Purging the print queue . . .
net stop Spooler
echo Deleting all print jobs . . .
ping localhost -n 4 > nul
del /q %SystemRoot%\system32\spool\printers\*.*
net start Spooler
echo Done!
ping localhost -n 4 > nul

John
Paul Baker [MVP, Windows Desktop Experience]
2010-03-09 18:57:22 UTC
Permalink
John,

That's what I do, but I did not think to delete those files. If I don't, are
they just harmless orphaned files?

What is causing the delay? Is it waiting on a third party component?

Paul
Post by Michael Dobony
Ok, why does it take forever to delete a print job? The printer ran out of
black ink and I canceled and deleted the job. An hour later the job was
still deleting. This seems to be a common problem with all versions of
Windows. It also prevents one from getting on with other print jobs.
It's always been like that on NT versions. Stop the Spooler service and
then delete the files in the %Systemroot%\system32\spool\PRINTERS folder
net stop spooler
del /q %SystemRoot%\system32\spool\printers\*.*
net start spooler
MVP Pegasus has often posted this little batch file where he has added a
ping command to delay the batch commands to allow more time for the
spooler service to stop and start. You can use this batch file to do the
@echo off
echo.
echo Purging the print queue . . .
net stop Spooler
echo Deleting all print jobs . . .
ping localhost -n 4 > nul
del /q %SystemRoot%\system32\spool\printers\*.*
net start Spooler
echo Done!
ping localhost -n 4 > nul
John
John John - MVP
2010-03-09 20:05:28 UTC
Permalink
To tell you the truth I have never left the files there so I don't know
what happens if you leave them there. I think that the spooler might
try to run the print job again but I'm really not sure. Do you have any
of these old leftovers files in your printers folder? Maybe there is
something in the file header that just tells the spooler to ignore the
files... just a guess. I know that if you have multiple print jobs in
the queue you can try to delete only the right .shd & .spl files and the
other remaining print jobs should be processed when the spooler is
started again. Maybe these can shed more light on the subject:

http://support.microsoft.com/kb/162365
How to Delete Print Jobs That Will Not Print

http://support.microsoft.com/kb/264662
Leftover SPL, SHD, and TMP Files Remain in the Spool Directory After All
Print Jobs Are Complete

http://technet.microsoft.com/en-us/library/cc976781.aspx
Local Print Provider

I don't know what causes this delay or hang when trying to delete some
of these print jobs, all I know is that it's been that way since NT4 so
I have come to accept it as one of these buggy NT print spooler things.

John
Post by Paul Baker [MVP, Windows Desktop Experience]
John,
That's what I do, but I did not think to delete those files. If I don't, are
they just harmless orphaned files?
What is causing the delay? Is it waiting on a third party component?
Paul
Post by Michael Dobony
Ok, why does it take forever to delete a print job? The printer ran out of
black ink and I canceled and deleted the job. An hour later the job was
still deleting. This seems to be a common problem with all versions of
Windows. It also prevents one from getting on with other print jobs.
It's always been like that on NT versions. Stop the Spooler service and
then delete the files in the %Systemroot%\system32\spool\PRINTERS folder
net stop spooler
del /q %SystemRoot%\system32\spool\printers\*.*
net start spooler
MVP Pegasus has often posted this little batch file where he has added a
ping command to delay the batch commands to allow more time for the
spooler service to stop and start. You can use this batch file to do the
@echo off
echo.
echo Purging the print queue . . .
net stop Spooler
echo Deleting all print jobs . . .
ping localhost -n 4 > nul
del /q %SystemRoot%\system32\spool\printers\*.*
net start Spooler
echo Done!
ping localhost -n 4 > nul
John
Loading...