Не удается подключить сетевой принтер в Windows

При подключении общего сетевого принтера с другого компьютера пользователи могут столкнуться с ошибкой Windows не удается подключиться к принтеру с кодами 0x0000011b или 0x00000002 . В этой статье мы рассмотрим типовые средства исправления ошибки подключения сетевого принтера Windows.

Ошибка 0x0000011b: Windows не может подключить сетевой принтер

В 2021 года Microsoft выпустило ряд обновлений безопасности для исправлений уязвимостей в службе Print Spooler под общим названием PrintNightmare . После установки этих обновлений при попытке подключения сетевого принтера пользователи стали массово сталкиваться с ошибкой 0x0000011b.

Connect to Printer_x000D_Windows cannot connect to the printer._x000D_Operation failed with error 0x0000011b.

Microsoft рекомендует использовать на принт-сервере (компьютере, на котором открыт общий доступ к принтеру ) только драйвера принтера типа Type 4 , для установки которых не нужны права администратора на стороне клиента. Обновите драйвера ваших принтеров до Type 4.

Если для принтера доступны только драйвера типа Type 3 , можно снизить уровень безопасности на принт сервере , создав параметр реестра RpcAuthnLevelPrivacyEnabled со значением 0 :

REG ADD "HKLMSystemCurrentControlSetControlPrint" /v RpcAuthnLevelPrivacyEnabled /t REG_DWORD /d 0 /f

Перезапустите службу диспетчер печати:

Restart-Service Spooler -Force

После этого попробуйте еще раз подключить сетевой принтер на клиенте.

После подключения сетевого принтера клиенту, верните значение RpcAuthnLevelPrivacyEnabled =0 на сервере, чтобы закрыть уязвимость.

Обновлений безопасности PrintNightmare также блокирует установку драйверов сетевых принтеров под пользователями без прав администратора. Чтобы временно разрешить установку принтеров под пользователями, выполнив команду:

reg add "HKLMSoftwarePoliciesMicrosoftWindows NTPrintersPointAndPrint" /v RestrictDriverInstallationToAdministrators /t REG_DWORD /d 0 /f

После подключения принтера верните значение RestrictDriverInstallationToAdministrators = 1 .

Ошибка 0x00000002 при установке сетевого принтера

Другая распространенная ошибка подключения сетевого принтера — 0x00000002 . Эта ошибка появляется при подключении сетевого принтера через UNC путь в формате \computername , после того, как вы нажали Подключить:

Connect to Printer_x000D_Windows cannot connect to the printer._x000D_Operation failed with error 0x00000002.

Установка принтера_x000D_Windows не удается подключиться к принтеру_x000D_В ходе операции произошла ошибка 0x00000002

Ошибка 0x00000002 обычно указывает, что драйвер для данного принтера, установленный на компьютере поврежден. Удалите этот драйвер из хранилища драйверов:

printui.exe /s /t2

Найдите драйвера принтера, который вы пытались установить и удалите его ( Remove -> Remove driver and driver package ).

Для удаления драйвера принтера можно также использовать PowerShell команду:

Remove-PrinterDriver -Name "HP Universal Printing PCL 6"

Если есть принтера, который используют этот драйвер, их придется также предварительно удалить .

Перезапустите диспетчер печати ( net stop spooler & net start spooler ) и попытайтесь еще раз подключить принтер.

Если при подключении принтера опять появится ошибка, очистить записи старого драйвера в реестре:

  1. Запустите regedit.exe и удалите ветку реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerPendingFileRenameOperations
  2. Если в папке c:WindowsSystem32spoolprtprocsx64 есть подкаталоги с именами от 1 до 499, удалите все эти подкаталоги и файлы кроме winprint.dll
  3. Удалите все Print Processors и драйвера (за исключением winprint) из ветки HKLMSYSTEMCurrentControlSetControlPrintEnvironments
  4. Перезагрузите компьютер и установите принтер

Подключение сетевого принтера через локальный порт

В качестве простого обходного решения при ошибках подключения сетевого принтера можно попробовать подключить принтер через локальный порт с UNC путем.

Для этого вам нужно получить полное UNC имя сетевого принтера. Откройте командную строку и выполните следующую команду чтобы вывести список принтеров на удаленном компьютере:

net view \192.168.13.200

В этом примере полное UNC имя сетевого принтера выглядит так: \192.168.13.200HPM2727_1 (можно использовать имя компьютера вместо IP).

Установите консоль управления принтерами с помощью команды:

dism /Online /add-Capability /CapabilityName:Print.Management.Console~~~~0.0.1.0

Запустите консоль printmanagement.msc и перейдите в раздел Print Servers -> Printers. Создайте новый принтер.

Выберите тип порты Local port , а в качестве имени порта укажите UNC путь к сетевому принтеру.

Продолжите установку. Выберите (или установите) драйвер печати.

Задайте имя принтера.

Проверьте, работает ли сетевая печать.

Подробнее способ описан в статье Печать на сетевом принтере на Windows 10 из-под XP
admin

Share
Published by
admin

Recent Posts

После включения диагностического запуска не удается войти в Windows — как исправить?

Некоторые пользователи, экспериментируя с конфигурацией системы в окне msconfig могут столкнуться с ситуацией, когда после…

1 неделя ago

WinScript — очистка и настройка Windows 11 и 10

На сайте не раз публиковались обзоры программ, предназначенных для очистки или настройки последних версий Windows.…

1 неделя ago

Предварительный просмотр накопительного обновления не устанавливается — решение

При установке некоторых обновлений Windows 11, имеющих в названии «Предварительный просмотр накопительного обновления», многие пользователи…

1 неделя ago

FixExec — восстановление ассоциаций .exe, .bat и .com файлов

Некоторые пользователи Windows 11, 10 и предыдущих версий системы могут столкнуться с ситуацией, когда исполняемые…

1 неделя ago

Ошибка 0x800705b4 при обновлении Windows 11 и 10 — как исправить?

При установке обновлений Windows 11/10 некоторые пользователи могут столкнуться с ошибкой с кодом 0x800705b4 и…

1 неделя ago

Обслуживание вашей версии Windows 11 окончено — что делать?

Пользователи Windows 11 могут столкнуться с сообщением «Обслуживание вашей версии Windows окончено» (Your version of…

1 неделя ago