С ситуацией, когда принтер вместо одного экземпляра документа начинает непрерывно печатать копии до полного опустошения лотка с бумагой, часто сталкиваются системные администраторы и пользователи при работе в среде Windows и «1С:Предприятие». Чаще всего подобная проблема характерна для линейки сетевых принтеров HP LaserJet P2035 и аналогичных моделей. При этом с одних рабочих мест печать может выполняться корректно, а с других — отправка любого файла из 1С, текстового редактора или браузера приводит к бесконечному циклу печати.
Проанализируем технические причины такого сбоя и подробно разберем все способы решения проблемы — от тонкой настройки сетевых портов и драйверов до сброса встроенной памяти устройства и проверки механизмов платформы 1С.
Причины циклической печати
Выясним, почему принтер уходит в бесконечный цикл выдачи страниц:
Ошибки штатного драйвера печати HP: стандартные драйверы под Windows 7/8/10 и Windows Server содержат программную ошибку обработки статуса задания. Драйвер не фиксирует получение от принтера подтверждения об успешной печати и перезапускает отправку задания по кругу.
Сбои протокола двустороннего обмена данными и SNMP: при сетевом подключении служба очереди печати Windows непрерывно опрашивает устройство. Если обратный ответ теряется или некорректно парсится, очередь печати не закрывается.
Некорректная работа функции Mopier Mode (аппаратного тиражирования): драйвер пытается использовать встроенную память устройства для размножения копий, которой у бюджетных принтеров недостаточно.
Застревание поврежденного кэша очереди печати: файлы очереди печати (.SPL и .SHD) блокируются службой печати в системной директории.
Сбой энергонезависимой памяти (NVRAM) самого принтера: внутренний счетчик заданий принтера блокируется во включенном состоянии.
Способ 1. Тонкая настройка сетевого порта принтера (LPR и SNMP)
Разберем быстрое и эффективное решение, не требующее переустановки драйверов. Оно заключается в корректировке параметров сетевого порта в Windows.
Откроем Панель управления и перейдем в раздел Устройства и принтеры.
Нажмем правой кнопкой мыши на проблемном принтере HP LaserJet P2035 и выберем пункт Свойства принтера.
Перейдем на вкладку Порты, выделим активный сетевой порт (Standard TCP/IP Port) и нажмем кнопку Настроить порт....
В открывшемся окне переключим протокол с RAW на LPR.
В поле Имя очереди укажем любое техническое наименование, например lp или PASSTHROUGH.
Обязательно установим флажок Разрешен подсчет байтов в LPR (LPR Byte Counting Enabled).
В нижней части окна снимем флажок Состояние SNMP разрешено (SNMP Status Enabled).
Нажмем ОК и применим внесенные изменения.
Способ 2. Отключение двустороннего обмена данными и режима Mopier
Рассмотрим дополнительные системные параметры драйвера, отключение которых устраняет рассинхронизацию между операционной системой и принтером.
В окне Свойства принтера на вкладке Порты снимем флажок Разрешить двусторонний обмен данными.
Перейдем на вкладку Параметры устройства (Device Settings).
Найдем раздел Устанавливаемые дополнения (Installable Options).
Переведем параметр Режим mopier (Mopier Mode) в положение Выключено (Disabled).
Параметр Запоминающее устройство / Жесткий диск (Printer Hard Disk) переведем в значение Не установлено (Not Installed).
На вкладке Дополнительно снимем отметку Включить дополнительные возможности печати (Enable advanced printing features).
Нажмем кнопку Обработчик печати (Print Processor) и убедимся, что выбран стандартный процессор winprint с типом данных RAW.
Способ 3. Замена драйвера на HP Universal Print Driver или HP LaserJet 6P
Если корректировка параметров порта не помогла, разберем радикальный и надежный способ — замену оригинального драйвера на универсальный или совместимый классический драйвер PCL.
Скачаем официальный пакет HP Universal Print Driver (PCL5 или PCL6) с сайта производителя.
В свойствах принтера на вкладке Дополнительно нажмем кнопку Сменить драйвер (или Новый драйвер).
Выберем установленный HP Universal Printing PCL5 (или PCL6).
В качестве альтернативы для моделей LaserJet P2035 отлично подходит стандартный встроенный драйвер HP LaserJet 6P из каталога Windows Update. Он полностью совместим с набором команд принтера и полностью лишен ошибок с дублированием копий.
Способ 4. Полная очистка очереди печати и кэша Spooler
Посмотрим, как очистить зависшие системные файлы очереди печати, которые могут бесконечно отправляться на печать при каждом включении компьютера.
Нажмем сочетание клавиш Win + R, введем команду services.msc и нажмем Enter.
Найдем службу Диспетчер печати (Print Spooler) и нажмем Остановить.
Перейдем в проводнике к каталогу C:\Windows\System32\spool\PRINTERS.
Удалим все находящиеся внутри файлы с расширениями .SPL, .SHD и .TMP.
Вернемся в оснастку служб и запустим Диспетчер печати.
Способ 5. Аппаратный сброс параметров принтера (NVRAM Init)
Если принтер имеет встроенную сетевую плату и сохранил зависшее задание во внутренней памяти, выполним аппаратный сброс настроек устройства:
Выключим принтер кнопкой питания.
Зажмем и будем удерживать кнопку Отмена (кнопка с красным крестом) и кнопку Пуск/Возобновить (кнопка с зеленым значком).
Не отпуская кнопки, включим питание принтера.
Удерживаем кнопки в течение 15–20 секунд, пока светодиодные индикаторы на панели управления не начнут синхронно мигать.
Отпустим кнопки. Дождемся завершения инициализации и перехода принтера в режим готовности (Ready). После сброса NVRAM устройство восстановит заводские настройки сети и очереди.
Способ 6. Проверка и сброс настроек в «1С:Предприятие»
Рассмотрим специфику поведения при печати из программ 1С. Платформа 1С сохраняет индивидуальные параметры печати документов (ориентацию, масштаб, принтер по умолчанию, количество копий) в пользовательском кэше.
Если ошибка возникает только при отправке документов из 1С, выполним следующие действия:
В окне предварительного просмотра печатной формы откроем меню Файл -> Параметры страницы.
Проверим значение в поле количества копий, нажмем кнопку восстановления стандартных параметров (если доступна) и сохраним форму нажатием кнопки ОК.
При вызове стандартного диалога печати по сочетанию клавиш Ctrl + P снимем флажок Разобрать по копиям (Collate).
Если программно используется формирование и вывод печатных форм, проверим корректность заполнения свойств объекта ТабличныйДокумент в коде конфигурации:
// Пример корректной установки параметров вывода печатной формы
ТабДок = Новый ТабличныйДокумент;
// Заполняем табличный документ данными...
// Явно определяем количество экземпляров для печати
ТабДок.КоличествоЭкземпляров = 1;
// Если печать выполняется без вывода диалога:
ТабДок.Напечатать(РежимИспользованияДиалогаПечати.НеИспользовать);
Если индивидуальные настройки пользователя в 1С повредились, очистим локальный кэш конфигурации, удалив временные каталоги пользователя в папках %AppData%\1C\1Cv8 и %LocalAppData%\1C\1Cv8.