Принудительная очистка очереди печати в Windows
Рассмотрим особенности очистки «подвисшей» очереди печати в системах 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 (запускать от имени администратора)
Рассмотренные выше методики помогут очистить очередь печати в любой версии Windows, будь то Windows 7, 8 или Windows 10.
Windows: как устранить проблемы с очередью печати?
Что такое очередь печати, диспетчер очереди печати
• spool (англ.) — подкачивать/откачивать данные;
• SPOOL — сокр. от Simultaneous Print Operations On Line — одновременная online-обработка заданий на печать;
• spooler (print spooler) — спулер, спулер печати — 1) диспетчер очереди печати — программа-планировщик, которая принимает документы, отправленные пользователем на печать, сохраняет их (на диске или в оперативной памяти) и отправляет в порядке очереди на выбранный принтер. Дисковый адрес Диспетчера очереди печати (Spooler SubSystem App) — \Windows\System32\spoolsv.exe; 2) подсистема печати получает, обрабатывает, выполняет диспетчеризацию и распределяет документы, направляемые на печать. Дисковый адрес Подсистемы печати (Spooler SubSystem DLL) — \Windows\System32\spoolss.dll;
• spool file — файл спулинга, спул-файл — файл, в который в процессе спулинга сбрасывается содержимое задания на печать;
• spooling — 1) спулинг (процесс обработки посылаемых на печать документов, которые сохраняются на диске или в ОЗУ до момента, когда печатающее устройство сможет их обработать); 2) подкачка (данных); откачка (данных) (одновременно с решением задачи);
• print spooling — вывод задания на печать с (предварительной) подкачкой;
• print queue — очередь заданий на печать (очередь печати) — список документов, ожидающих печати. Очередь печати (Windows Vista и XP) формируется в папке \Windows\system32\spool\PRINTERS;
• Буферизация печати — создание очереди печати, позволяет процессору компьютера ускорить обработку задания печати за счет его временного сохранения на жестком диске перед отправкой на принтер. В результате процессор может значительно быстрее вернуть управление программе, из которой выполняется печать, чем если бы обработка всего задания и отправка его непосредственно на принтер выполнялись самой программой.
Как отменить задание на печать
— XP: нажмите Пуск → Настройка → Принтеры и факсы (Vista: Пуск → Панель управления → Принтеры);
— в диалоговом окне Принтеры и факсы (Принтеры) двойным щелчком левой кнопки мыши откройте окно нужного принтера (или щелкните нужный принтер правой кнопкой мыши, из открывшегося контекстного меню выберите Открыть);
— в очереди печати щелкните правой кнопкой мыши элемент, печать которого требуется остановить, и выберите команду Отмена (для отмены всех заданий в меню Принтер выберите команду Очистить очередь печати).
Примечания
1. Если не удается отменить задание печати с помощью указанных действий, нажмите кнопку Отмена на самом принтере.
3. Чтобы быстро просмотреть список текущих заданий печати, дважды щелкните значок принтера в области уведомлений Панели задач (рядом с часами).
3. Пользователь может отменять только собственные задания печати. Для отмены задания печати другого пользователя необходимо иметь разрешение на управление документами на принтере.
Проблемы с отменой заданий на печать
Windows Vista и XP «не любят» отмену заданий на печать «на лету» (когда печать уже идет). В таких случаях очистить очередь печати зачастую удается не сразу, а до тех пор, пока вы не очистите очередь печати, следующее задание на печать выполняться не будет. Иногда отменить задание на печать удается только после перезагрузки (а иногда после перезагрузки задание на печать, которое мы уже вроде бы отменили, принтер начинает распечатывать).
В таких случаях можно попытаться вручную очистить папку очереди печати (\Windows\system32\spool\PRINTERS). Правда, удается это не всегда, т.к. эта папка имеет атрибуты Скрытая, Системная, Только для чтения, поэтому Windows не позволит вам особо «бесчинствовать» в этой папке.
Можно попытаться очистить очередь печати с помощью альтернативного файлового менеджера, например, Total Commander (в настройках должен быть установлен флажок Показывать скрытые и системные файлы).
Есть еще один — радикальный! — метод:
— завершите все задания печати;
— остановите спулер печати;
— создайте специальную папку для заданий очереди печати (например, C:\spool);
— укажите в настройках сервера печати (или через Реестр) ее месторасположение;
— запустите спулер печати;
— теперь при проблемах с отменой печати запустите Службы (или Диспетчер задач);
— выгрузите спулер печати spoolsv.exe;
— откройте папку C:\spool и удалите все временные файлы (каждое задание на печать, как правило, «оформляется» парой файлов спулинга — *.SPL, *.SHD, например, 00005. SHD и 00005. SPL (или FP00001. SPL и FP00001. SHD). У некоторых принтеров, в папке очереди печати, вдобавок к файлам *.SPL, *.SHD, создаются еще и файлы *.tmp);
— запустите спулер печати.
Как выгрузить (остановить) Диспетчер очереди печати (спулер печати)
— нажмите Пуск → Настройка → Панель управления → Администрирование → Службы (или Пуск → Выполнить… → в выпадающем списке Открыть диалогового окна Запуск программы введите services.msc → OK);
— в диалоговом окне Службы найдите Диспетчер очереди печати;
— щелкните Остановить службу.
Как запустить Диспетчер очереди печати
— нажмите Пуск → Настройка → Панель управления → Администрирование → Службы (или Пуск → Выполнить… → в выпадающем списке Открыть диалогового окна Запуск программы введите services.msc → OK);
— в диалоговом окне Службы найдите Диспетчер очереди печати;
— щелкните Запустить службу.
Как изменить расположение Папки очереди печати
Создайте на жестком диске папку, например, C:\spool;
1-й способ
1) Windows Vista:
— нажмите Пуск → Панель управления → Принтеры;
— откройте меню Файл → Свойства сервера…;
— в диалоговом окне Свойства: Сервер печати откройте вкладку Дополнительные параметры;
— в текстовое поле Папка очереди печати введите C:\spool (по умолчанию — C:\Windows\system32\spool\PRINTERS) → OK;
— в появившемся окне Свойства сервера печати санкционируйте изменение местоположения папки Диспетчера очереди печати, нажав Да.
2) Windows XP:
— нажмите Пуск → Настройка → Принтеры и факсы;
— в диалоговом окне Принтеры и факсы откройте меню Файл → Свойства сервера;
— в диалоговом окне Свойства: Сервер печати откройте вкладку Дополнительные параметры;
— в текстовое поле Папка очереди печати введите C:\spool (по умолчанию — C:\WINDOWS\System32\spool\PRINTERS) → OK;
— в появившемся окне Свойства сервера печати санкционируйте изменение местоположения папки Диспетчера очереди печати, нажав Да.
Внимание!
1. Изменение местоположения папки Диспетчера очереди печати вступают в силу немедленно, и все текущие документы не будут напечатаны. Рекомендуется дождаться завершения печати всех документов, прежде чем изменять местоположение папки Диспетчера очереди печати.
2. Папка очереди печати по умолчанию (если не задано иное!) применяется для всех принтеров, установленных в системе.
2-й способ
Ручное редактирование Реестра:
— нажмите Пуск → Выполнить… → в выпадающем списке Открыть диалогового окна Запуск программы введите regedit → OK;
— в диалоговом окне Редактор реестра найдите раздел [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers];
— измените значение REG_SZ-параметра на путь к папке, которую мы создали, например, C:\spool (значение по умолчанию — C:\WINDOWS\System32\spool\PRINTERS);
— закройте Редактор реестра.
Примечания
1. Для каждого установленного в системе принтера можно назначить свою папку очереди печати. Например, у вас установлен принтер HP LaserJet 1015. Найдите раздел
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\HP LaserJet 1015].
Измените значение строкового параметра SpoolDirectory на путь к папке, которую мы создали, например, C:\spool (значение по умолчанию не задано).
2. Если вы не можете запустить Диспетчер задач, см. Что делать, если появляется сообщение «Диспетчер задач отключен администратором»?
3. Если пункт меню Свойства папки недоступен, см. Что делать, если недоступен пункт меню «Свойства папки»?
4. Если вы не можете запустить Редактор реестра Windows, см. Что делать, если появляется сообщение «Редактирование реестра запрещено»?
5. При работе с Редактором реестра Windows следует соблюдать осторожность, а то можно такого наредактировать, что придется переустанавливать операционную систему.
6. Подсистему печати могут отключить вирусы — см. Windows: что делать, если вирусы отключили подсистему печати?
7. Если не удается отобразить скрытые файлы и папки, см. Windows: что делать, если не удается отобразить скрытые файлы и папки?
Принудительная очистка очереди печати в Windows без перезагрузки
Очередь печати в Windows не редко подвисает, причем подвисает довольно основательно, так что обычная, «мягкая» очистка текущей очереди печати принтера из панели управления не помогает. Соответсвенно застрявшие там документы мешают отправке на печать новых файлов.
Конечно, в большинстве случаев проблему решает перезагрузка, однако не всегда есть возможность её выполнить, особенно если это сервер. Сегодня расскажу как принудительно очистить зависшую очередь печати, если она заблокирована системой или драйвером самого принтера без перезагрузки.
Сразу хочу предупредить, что данный способ очистки очереди печати УДАЛЯЕТ ВСЕ ЗАДАНИЯ НА ВСЕХ ПРИНТЕРАХ .
Для начала немного теории. При печати любого документа в Windows, службой печати (Print Spooler) в каталоге спулера %systemroot%\System32\spool\PRINTERS создается два файла: один с расширением .shd (содержит настройки задания печати), второй — .spl (собственно данные, которые нужно распечатать). После успешной печати, эти файлы автоматически удаляются как из этого каталога, так и из очереди печати. Но это в теории, а на практике бывает и по другому, может быть вызвано как ошибками в самом документе, так и ошибками в драйвере. а может звезды сегодня так расположились.
Наглядный пример зависшей очереди печати одного из принтеров (файлы там торчали уже несколько дней):
Перед принудительной очисткой содержимого этой папки (спулера печати), нам следует остановить саму службу печати Windows. Сделать это можно как через «Панель управления компьютером» в соответствующем разделе «Службы» остановив службу «Диспетчер печати», так и из командной строки (естественно запустив её правами администратора):
Думаю пояснения особые не нужны — останавливаем службу, удаляем файлы с расширением *.shd и *.spl, далее заново запускаем диспетчер печати. Конечно можно удалить эти файлы просто зайдя в каталог %systemroot%\system32\spool\printers\. Тут уж кому как удобнее.
Ставьте лайки и подписывайтесь на канал! Будет ещё много интересного.
Не печатает принтер. Очистка spoolerа
Принтер – это периферийное устройство, которым комплектуется почти каждый персональный компьютер. При покупке компьютера каждый человек задумывается о том, что ещё ему может понадобится для полноценной работы. И выбор зачастую падает именно на принтер. Но, с новым устройство, как не странно приходят новые проблемы, в виде ошибок или просто не печатает принтер
Таких ошибок бывает очень много и различного характера. Например, закончив работу над документом, курсовой или рефератам, его нужно обязательно распечатать, но при нажатие на кнопку «печать», принтер не подаёт никаких признаков начала работы, и при этом документ висит в очереди не пропадая. Так же, встречаются совсем противоположные ситуации, когда при отправке на печать документ в очереди пропадает, но ничего не происходит. Ещё, последнее время, мне часто на глаза попадается такая ошибка как: «Не существует обработчик печати».
Одной из самых простых причин почему не печатает принтер, является: выпадение USB кабеля с гнезда, или сбоя работы службы печати. Решения бывают такими же банальными, если всё подключено, и питание, и USB соединение, иногда достаточно просто перезагрузить компьютер, что приведёт к перезапуску службы «Очередь печати».
Но, если это не помогло, тогда я Вам расскажу, как почистить программу-планировщик spooler, а именно, что нужно убрать в соответствующих папках и системном реестре. Этот вариант в большинстве случав, помогает разобраться: почему не печатает принтер.
Spooler – программа которая сохраняет отправленные пользователем документы, и в виде очереди отправляет на принтер для печати.
Очистка реестра от старых принтеров
Итак, нашу очистку мы начнем с системного реестра.
Буте внимательны, выполняя дальнейшие действия Вы удалите из системы все установленные принтеры, поэтому, после окончания процедуры очистки, нужно будет установить принтер и драйвера заново.
Так же, перед выполнением последующих рекомендаций, отключите принтер от компьютера.
В окне «Выполнить» прорисуем команду regedit, которая вызовет окно реестра.
Первым шагом будет проверка компонентов от которых зависит служба spooler, для этого переходим к ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Spooler, где для параметра DependOnService, должно быть указано значение RPCSS. Так же, могут быть указаны другие значения, их удалять не нужно, нам главное что бы было RPCSS, если все в порядке тогда переходим дальше.
Далее, удаляем все печатающие устройства которые есть в системе. Переходим по ветке HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Printers, где нажав на стрелочку появится весь список принтеров. Для их удаления мы можем воспользоваться клавишей «Delet»
Вторым пунктом, является очистка от всех драйверов. Развернув ветку KEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print\Environments\WindowsNTx86\Drivers\Version-3 ( в х64 битных операционных системах нужно открыть …\Environments\Windows NTx64\Drivers\Version-3) удаляем весь перечень драйверов установленных в системе.
В ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors, список записей должен выглядеть следующим образом.
- BJ Language Monitor
- Local Port
- PJL Language Monitor
- Standard TCP/IP Port
- USB Monitor
Все остальное удаляем.
На этом работа с реестра окончена, теперь переходим к очистке папки Spool
Очистка папки Spool
В стандартном режиме мы не сможем почистить эту папку, так как служба «Диспетчер печати» её использует и у нас просто не будет доступа удалить содержимое. Поэтому, перезагружаем компьютер и загружаемся в безопасном режиме с помощью F8 в Windows 8 и XP, а в Windows 8 с помощью тех способов которые описывались здесь.
Войдя в безопасный режим переходим на диск “С:\” –> Windows –> System32 –> Spool. В этой папке нас интересует содержимое следующее:
C:\Windows\System32\spool\prtprocs\w32x86 – удаляем все содержимое, кроме файла winprint.dll, так как его удаление может повлечь за собой появление новых проблем связанных с печатью ( в x64 папку называется соответственно )
C:\Windows\System32\Spool\Printers – удаляем все данные о установленных принтерах
C:\Windows\System32\Spool\Drivers\w32x86 – чистим папку от все файлов ранее установленных драйверов ( в системах x64 путь Drivers\x64 ).
Очистив папку Spool, перезагружаемся в нормальном режиме и устанавливаем заново драйвера и принтер на компьютер. После чего, радуемся возобновлению работы принтера. Кстати, не забудьте после установки ещё раз перезагрузится для корректной работы устройства.