
Розглянемо особливості очищення "підвішеному" черги друку в системах Windows. Розглянута методика дозволяє видалити з черги документи, які з якоїсь причини не друкуються і заважають відправці на друк інших файлів і документів.
"М'який" спосіб очищення поточної черги друку принтера виконується з вікна Панелі управління (Control Panel -> Devices and Printers). У списку принтерів потрібно знайти проблемний принтер, клацнути по ньому ПКМ і вибрати в меню пункт See what's printing.
У вікні управління чергою друку принтера в меню вибираємо пункт Printer-> Cancel All Documents . Всі документи, в тому числі завислі, повинні піти з черги друку принтера.
У тому випадку, якщо якісь документи не видаляються з черги друку, значить вони в даний момент заблоковані системою або драйвером самого принтера. Вони пропадуть з черги друку після перезавантаження. Якщо перезавантаження виконати проблематично, можна примусової видалити всі завдання з черги служби друку Windows.
Нагадаємо, що при відправці документа на друк на принтер, служба друку Windows (Print Spooler) формує завдання друку і створює два файли: один з розширенням .SHD (Містить настройки завдання друку), другий - .SPL (зберігає власне дані, які потрібно роздрукувати). Таким чином, завдання друку будуть доступні службі друку, навіть після закриття програми, яка ініціювала друк. Дані файли зберігаються в каталозі спулера (за замовчуванням, «% Systemroot% \ System32 \ spool \ PRINTERS"). Після успішного друку, ці файли автоматично видаляються з цього каталогу, і, відповідно, з черги друку.
Нам потрібно вручну очистити вміст цієї папки, тим самим ми видалимо всі завдання в пам'яті Print Spooler.
Відкрийте командний рядок з правами адміністратора і послідовно виконайте команди:
net stop spooler
del% systemroot% \ system32 \ spool \ printers \ *. shd / F / S / Q
del% systemroot% \ system32 \ spool \ printers \ *. spl / F / S / Q
net start spooler
Цей набір команд послідовно зупиняє службу друку Windows, рекурсивно видаляє всі файли з розширеннями * .shd і * .spl з каталогу% systemroot% \ system32 \ spool \ printers і запускає зупинену службу.
Архів з готовим bat файлом можна скать за посиланням reset_spooler.zip (Запускати від імені адміністратора)
Примітка. У тому випадку, якщо скрипт не працює, перевірте, що у властивостях принт-сервера (Панель управління -> Devices and Printers -> кнопка Print Server Properties в верхньому меню -> вкладка Advanced -> в полі Spool folder location вказано каталог C: \ windows \ system32 \ spool \ Printers. У 99% випадків це повинно бути так. Якщо шлях до каталогу спулера відрізняється, потрібно буде поправити шлях до нього в скрипті.
Розглянуті вище методики допоможуть очистити чергу друку в будь-якої версії Windows, будь то Windows 7, 8 або Windows 10.