the group that wrote this is pretty proud. Most of you will just start at
method 4 since you already performed the first 3 methods.
I'll take a minute and explain why a job gets stuck. Uninterested parties
just follow the link.
Jobs get a reference count associated with them from the spooler and the
driver components (print processors and language monitor primarily). When a
reference gets incremented without a decrement, the job will still have a
reference and the spooler will not delete the job until the component which
incremented the count performs the decrement function. If the decrement
function never arrives or takes a long time from the function, the job sits
in the queue in a deleting state while the spooler waits for the reference
count to reach 0.
Yes I know, you want to just delete the dang job, you don't care that some
process out there is supposed to manipulate the job to signal the spooler
that it's done and ready for deletion.
Windows Printing Team
Search the Microsoft Knowledge Base here:
This posting is provided "AS IS" with no warranties, and confers no rights.