Убрать принтер из 1С 8.3: от настроек печати до Windows
Содержание
1С не хранит собственный список принтеров. В диалоге печати она показывает ровно те устройства, что установлены в операционной системе, где запущен клиент: Windows, macOS или сервере терминалов. Поэтому фраза «удалить принтер из 1С» на практике означает одно из трёх действий, и выбирать нужно по ситуации.
Первое — сменить принтер прямо при печати, если документ ушёл не туда. Второе — сбросить сохранённые настройки печати формы, когда 1С упорно шлёт печать на принтер, которого уже нет. Третье — убрать устройство в самой системе, чтобы оно пропало из списка везде. Ниже — каждый случай по шагам, плюс отдельно разбор принтера, который не удаляется или возвращается после перезагрузки.
Где 1С берёт список принтеров и почему «удалить» — это три разных действия
Печать в 1С:Предприятии идёт через подсистему печати операционной системы. Табличный документ формируется внутри программы, а на бумагу его выводит системный диспетчер печати. Отсюда главный вывод: в конфигурации, в базе данных и в Конфигураторе принтеров нет — удалять там нечего.
Что реально «запоминается» на стороне 1С — это имя принтера в сохранённых настройках печати конкретной формы и конкретного пользователя. Именно из-за этого после замены устройства программа может продолжать печатать на старое имя.
Определите свой случай, чтобы не делать лишнего:
Сменить или отключить принтер при печати документа
Самый частый запрос — не «удалить», а «печатать на другой принтер». Делается это в диалоге печати:
- Откройте любой документ или отчёт и нажмите команду печати (горячие клавиши
Ctrl+P, либо кнопка с изображением принтера в командной панели формы). - 1С покажет предварительный просмотр табличного документа.
- В окне печати в поле выбора принтера раскройте список и укажите нужное устройство.
- Проверьте число экземпляров и диапазон страниц, затем печатайте.
Если нужно печатать без лишних окон, в настройках печати формы можно включить вывод сразу на принтер по умолчанию. Тогда 1С перестанет показывать предпросмотр, а печать пойдёт на системный принтер, назначенный основным в Windows.
Чтобы «отключить» конкретный принтер только для себя, достаточно не выбирать его и назначить основным другое устройство в системе — 1С по умолчанию берёт именно системный принтер по умолчанию.
В списке 1С показывает и виртуальные устройства — Microsoft Print to PDF, отправку в OneNote и подобные. Это тоже системные принтеры: убрать их из 1С можно, только удалив в Windows, точно так же как обычное устройство. Если из печати документа нужно получить файл, а не бумагу, выбирайте в диалоге виртуальный PDF-принтер — отдельной команды «сохранить в файл» в типовой печати обычно нет.
Сбросить настройки печати, когда 1С шлёт печать на пропавший принтер
Типичная жалоба: старый принтер физически убрали, а 1С при печати накладной или счёта всё равно пытается отправить задание на него и выдаёт ошибку. Причина — имя принтера сохранилось в настройках печати этой формы для вашего пользователя. Устройства нет, а ссылка на него осталась.
Что делать:
- Откройте проблемный документ и вызовите печать.
- В окне настроек печати выберите в списке принтеров рабочее устройство вместо отсутствующего.
- Сохраните настройки печати формы (кнопка сохранения параметров в том же окне). Новый принтер запишется поверх старого.
Если форм много и перебирать их по одной долго, администратор может очистить сохранённые настройки пользователя централизованно. В типовых конфигурациях на «1С:Библиотеке стандартных подсистем» это раздел Администрирование → Настройки пользователей и прав, где есть обработка копирования и очистки настроек. Там выбирают пользователя и очищают его настройки (в том числе параметры печати).
Очистка настроек сбрасывает не только принтер, но и расположение колонок, отборы и прочие персональные настройки пользователя. Предупредите человека заранее.
Если и это не помогло, а имя принтера «прилипло» намертво — закройте все сеансы 1С этого пользователя и войдите заново. Часть параметров печати кэшируется на время сеанса и подхватывается только при повторном входе.
Как убрать принтер в Windows, чтобы он исчез из 1С
Когда устройство нужно убрать совсем — удаляют его в операционной системе. После этого принтер пропадёт из списка во всех программах сразу.
В Windows 10 и 11:
- Откройте
Параметры → Принтеры и сканеры(в Windows 11 этот раздел лежит внутриBluetooth и устройства). - Найдите принтер в списке и откройте его.
- Нажмите
Удалить(в Windows 11 —Удалить устройство) и подтвердите.
Если принтер сетевой и подключён по пути вида \\сервер\имя-принтера, удаление на вашем компьютере убирает только локальное подключение к нему — сам принтер на сервере печати остаётся, и у других пользователей он не пропадёт. Полностью такое устройство удаляет администратор на сервере, где оно опубликовано.
Классический способ, одинаковый и для рабочих станций, и для Windows Server 2016 и новее:
- Откройте
Панель управления → Оборудование и звук → Устройства и принтеры. - Щёлкните правой кнопкой по принтеру.
- Выберите
Удалить устройство.
После удаления перезапустите клиент 1С — список принтеров программа читает при открытии диалога печати, и убранное устройство больше не появится.
Если принтер удалён, а в списке 1С всё равно мелькает «призрак», удалите заодно и драйвер устройства. В окне Устройства и принтеры выделите любой принтер и на верхней панели нажмите Свойства сервера печати. На вкладке Драйверы выберите драйвер проблемного устройства и нажмите Удалить, указав вариант удаления пакета драйвера. Перед этим очередь печати должна быть пуста, а служба печати — запущена.
Ещё одна причина, по которой 1С будто «не забывает» принтер: Windows сам переназначает основной принтер на тот, где печатали последним. Из-за этого программа перескакивает на вернувшееся или сетевое устройство. Чтобы закрепить основной принтер, в Параметры → Принтеры и сканеры отключите переключатель Разрешить Windows управлять принтером по умолчанию и назначьте нужное устройство вручную.
На терминальном сервере удаление принтера затрагивает всех пользователей этого сервера. Убедитесь, что устройство действительно никому не нужно, прежде чем удалять.
Принтер не удаляется или появляется снова: очередь, реестр, RDP
Отдельная история — принтер, который отказывается удаляться или возвращается в список после каждой перезагрузки. 1С тут ни при чём, проблема в системе. Разберём по симптомам:
Диспетчер печати, очистите папку очереди, затем снова запустите службу — после этого устройство удалится.Зависшая очередь печати. Порядок действий:
net stop spooler
del /Q /F "C:\Windows\System32\spool\PRINTERS\*.*"
net start spooler
Служба spooler (Диспетчер печати) обслуживает печать всех программ на компьютере. Остановка службы оборвёт все текущие задания печати на этой машине, а на сервере — у всех пользователей сразу. Делайте это, когда никто не печатает.
«Призрак» в реестре. Если устройство удалено, но продолжает мешать, его следы остаются в ветке реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers
Правка реестра — крайняя мера. Перед удалением ключа остановите Диспетчер печати, иначе служба перезапишет значения. Снова запустите службу после правки. Если сомневаетесь — поручите это системному администратору.
Проброс по RDP. На терминальном сервере локальные принтеры пользователя пробрасываются в сеанс при каждом входе. Чтобы такой принтер перестал появляться, уберите его не в сеансе, а в настройках подключения на своём компьютере: в клиенте удалённого рабочего стола на вкладке Локальные ресурсы снимите галку Принтеры. Если перенаправлением управляет сервер через групповые политики — вопрос решает администратор домена.
Принтеры в облачной 1С, тонком и веб-клиенте, на Mac
В облачной 1С (сервис по модели «1С:Фреш») и в веб-клиенте сервер не хранит принтеры и не управляет ими. Печать идёт на устройства того компьютера, с которого вы работаете:
- Веб-клиент в браузере печатает через механизм браузера или формирует файл (например, PDF), который вы затем отправляете на свой локальный принтер. Отдельного списка принтеров внутри облака нет — убирать принтер нужно в своей операционной системе. Если установлено расширение работы с 1С:Предприятием, печать идёт напрямую на локальный принтер; без расширения браузер сам предложит распечатать или сохранить файл , и список устройств в этом окне будет браузерным, а не 1С.
- Тонкий клиент по RDP использует проброшенные принтеры вашего рабочего места. Удаление — в настройках RDP-подключения, как описано выше.
На macOS принцип тот же: 1С показывает принтеры, установленные в системе. Удаляют их в Системные настройки → Принтеры и сканеры — выделите устройство и нажмите кнопку «минус». После этого принтер пропадёт и из 1С. На Linux список принтеров ведёт служба печати CUPS, удаление — через её веб-интерфейс по адресу http://localhost:631 или в системных параметрах принтеров вашего дистрибутива.
Как задать или сбросить принтер из встроенного языка 1С
Удалить системный принтер средствами встроенного языка нельзя — такого метода в платформе нет, печать всё равно идёт через подсистему ОС. Но для автоматической печати (например, этикеток или путевых листов пачкой) можно задать принтер программно и так обойти «залипшее» имя:
ТабДок = Новый ТабличныйДокумент;
// ... вывод макета в ТабДок ...
// какие принтеры видит система
Массив = ТабДок.ИменаПринтеров();
// печатать на конкретный принтер по его имени
ТабДок.ИмяПринтера = "HP LaserJet M15";
// пустая строка вернёт печать на системный принтер по умолчанию
ТабДок.ИмяПринтера = "";
Свойство ИмяПринтера задаёт целевое устройство для этого табличного документа, а метод ИменаПринтеров() возвращает массив имён принтеров, доступных в системе. Присвоение пустой строки снимает привязку к конкретному принтеру — печать снова пойдёт на основной. Имя принтера в коде должно точно совпадать с тем, как оно записано в системе.