Ошибка 0x00000709 при подключении принтера: как исправить в Windows 10 и 11
0x00000709 — это системный код 1801 «недопустимое имя принтера»: Windows не нашла очередь печати по переданному имени. Разбираем два разных сценария — выбор принтера по умолчанию и подключение сетевого принтера.
Содержание
Сообщение «Невозможно завершить операцию (ошибка 0x00000709). Проверьте имя принтера и убедитесь, что принтер подключен к сети» означает ровно то, что написано в заголовке кода: 0x709 — это системная ошибка Windows 1801, ERROR_INVALID_PRINTER_NAME, «Указано недопустимое имя принтера». Windows не смогла найти очередь печати по тому имени, которое ей передали. Сам принтер при этом почти всегда исправен и прекрасно печатает с других компьютеров.
Дальше всё зависит от того, где вы увидели ошибку. Сценариев два, и лечатся они по-разному:
| Когда появляется 0x00000709 | Что на самом деле не так |
|---|---|
| Жмёте «Использовать по умолчанию» на уже установленном принтере | Windows не может записать имя принтера по умолчанию в профиль пользователя |
Подключаете принтер по пути \\сервер\принтер или добавляете его в «Принтеры и сканеры» |
Клиент не разрешает имя компьютера-хозяина или не может с ним договориться по RPC |
Что проверить за пару минут
- Снимите автовыбор принтера по умолчанию. «Параметры» → «Bluetooth и устройства» → «Принтеры и сканеры» (в Windows 10 — «Устройства» → «Принтеры и сканеры») → отключите «Разрешить Windows управлять принтером по умолчанию». Пока галочка стоит, Windows сама переназначает принтер на последний использованный и мешает вашему выбору.
- Сверьте имя буква в букву. Откройте в проводнике
\\имя-компьютераи посмотрите, как сетевая папка принтера называется на самом деле. Кириллица, лишний пробел, дефис вместо подчёркивания — и вы получите «недопустимое имя принтера». - Проверьте, что хозяин принтера в сети и просыпается.
ping имя-компьютерадолжен отвечать, а сам компьютер — не быть в спящем режиме. Еслиpingпо имени не работает, а по IP работает — проблема в разрешении имён, а не в печати. - Перезапустите диспетчер печати на своём компьютере:
services.msc→ «Диспетчер печати» → «Перезапустить». Или в командной строке от администратора:net stop spoolerиnet start spooler. Если служба не запускается, разбирайтесь сначала с ней — это отдельная история, мы описали её в статье «Локальная подсистема печати не выполняется». - Удалите принтер и добавьте заново — если очередь осталась после смены IP или переустановки драйвера, её запись могла «окаменеть».
Ошибка только при выборе принтера по умолчанию
Имя принтера по умолчанию Windows хранит в профиле пользователя — в параметре Device ветки HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows. Значение выглядит как Имя принтера,winspool,Ne00:: имя очереди, поставщик печати и порт (этот формат Microsoft описывала ещё в статье KB 196732 про установку принтера по умолчанию скриптом входа). Если запись битая или в ней осталось имя удалённого принтера, Windows не может её переписать и отдаёт 0x00000709.
Самый быстрый путь — не трогать реестр вручную, а выполнить от имени администратора:
rundll32 printui.dll,PrintUIEntry /y /n "Имя принтера"
Ключ /y назначает принтер по умолчанию, /n задаёт его имя — ровно то, которое показано в списке «Принтеры и сканеры».
Не помогло — правьте Device в редакторе реестра: regedit → перейдите в ветку выше → двойной щелчок по Device → впишите нужное значение в формате Имя принтера,winspool,Ne00: → перезагрузка. Бывает и так, что значение исправляется, а после перезапуска возвращается старое: тогда у ключа Windows отобраны права на запись. Правый щелчок по ключу → «Разрешения» → у вашей учётной записи должен быть «Полный доступ».
Перед правкой реестра выгрузите изменяемый раздел: правый щелчок по ключу → «Экспортировать». Ошибка в ветке
HKEY_CURRENT_USERломает профиль пользователя, а не только печать, и откатить её без копии нечем.
Ошибка при подключении сетевого принтера
Здесь 0x00000709 почти всегда про имя компьютера, а не про принтер.
Подключитесь по IP вместо имени. Проверьте, работает ли \\192.168.1.50\HP-M428 — если да, виновато разрешение имён. В офисе принтер вообще надёжнее ставить не через общий доступ с чужого компьютера, а напрямую портом TCP/IP: тогда печать не зависит от того, включён ли компьютер коллеги. Порядок действий мы разобрали в статье «Принтер по сети: как подключить в офисе по IP и через общий доступ».
Добавьте учётные данные заранее. «Панель управления» → «Диспетчер учётных данных» → «Учётные данные Windows» → «Добавить учётные данные Windows»: адрес \\имя-компьютера, логин и пароль учётной записи, которая есть на компьютере-хозяине. Если на хозяине у пользователя нет пароля или вход гостевой, подключение к общему принтеру закономерно не проходит — это разобрано в статье «Общий доступ к принтеру: как настроить в Windows 10 и 11».
Проверьте, не псевдоним ли это. Если сервер печати доступен по альтернативному имени через запись CNAME в DNS, подключение по этому псевдониму падает с 0x00000709, а по настоящему имени узла проходит. Microsoft подтверждает такое поведение и предлагает на сервере печати включить параметр DnsOnWire (статья KB 2546625 со ссылкой на KB 979602) и дополнительно прописать псевдоним в локальном файле hosts — именно NetBIOS-именем, без домена, а не как FQDN. После правок перезапустите диспетчер печати на сервере.
Windows 11 22H2 и новые правила RPC
С Windows 11 версии 22H2 Microsoft изменила способ связи между компьютерами при печати: по умолчанию используется RPC по TCP, а RPC через именованные каналы отключён. Если по сети фильтруется порт 135 или динамический диапазон 49152–65535, клиент не договаривается с хозяином очереди — и вы видите 0x00000709 или родственные коды.
Правильное решение — открыть порты, а не ослаблять защиту. Если это невозможно, Microsoft документирует настройки в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Printers\RPC (или в групповой политике: «Конфигурация компьютера» → «Административные шаблоны» → «Принтеры»):
| Параметр (REG_DWORD) | Значение | Что делает |
|---|---|---|
RpcUseNamedPipeProtocol |
1 | Клиент использует RPC через именованные каналы вместо TCP |
RpcProtocols |
0x7 | Сервер слушает и именованные каналы, и TCP |
RpcTcpPort |
номер порта | Фиксирует порт для RPC по TCP вместо динамического |
ForceKerberosForRpc |
1 | Требует Kerberos (только для доменной сети) |
Microsoft прямо пишет, что вариант с именованными каналами не рекомендуется, и что для его работы часто приходится дополнительно ставить RpcAuthnLevelPrivacyEnabled в 0 на компьютере-хозяине и включать небезопасный гостевой доступ в SMB2/SMB3.
Отключение проверки подлинности RPC и гостевого доступа SMB — это откат исправлений уязвимостей печати (CVE-2021-1678, PrintNightmare). На рабочих станциях с бухгалтерией и доступом к 1С так делать не стоит: ближайшее обновление безопасности всё равно вернёт защиту, а печать снова встанет.
Когда звать инженера или администратора
Самому имеет смысл пройти первые пять проверок, назначить принтер по умолчанию и попробовать подключение по IP. Дальше начинается то, что правкой на одном компьютере не лечится:
- ошибка у всех сотрудников сразу — значит, дело в сервере печати или групповой политике, и менять надо там, а не на рабочих местах;
- принтер подключён через расшаренный компьютер коллеги — такую схему в офисе лучше переделать на прямое подключение по IP, иначе ошибки будут возвращаться после каждого обновления;
- вместе с 0x00000709 появляются 0x0000011b или «Windows не удаётся подключиться к принтеру» — это другая причина, смотрите разбор ошибки 0x0000011b и таблицу кодов подключения;
- в компании есть домен и политики — отключать проверку подлинности RPC «чтобы заработало» без согласования с тем, кто отвечает за безопасность, нельзя.
У организаций на обслуживании по договору такие случаи разбирает закреплённый инженер: он уже знает, как устроена сеть и печать в конкретном офисе, и видит в личном кабинете весь парк техники — поэтому не начинает с нуля на каждом вызове.
Частые вопросы
Что значит «невозможно завершить операцию, ошибка 0x00000709»?
0x709 — это системная ошибка Windows 1801 ERROR_INVALID_PRINTER_NAME, «указано недопустимое имя принтера». Windows не смогла найти очередь печати по переданному имени: сам принтер при этом обычно исправен.
Ошибка 0x00000709 появляется при назначении принтера по умолчанию. Что делать?
Сначала отключите «Разрешить Windows управлять принтером по умолчанию» в «Принтеры и сканеры». Затем выполните от администратора rundll32 printui.dll,PrintUIEntry /y /n "Имя принтера". Если не помогло — проверьте параметр Device в ветке HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows и права на запись в этот ключ.
Почему 0x00000709 возникает при установке сетевого принтера?
Клиент не разрешает имя компьютера-хозяина или не может договориться с ним по RPC. Проверьте подключение по IP вместо имени (\\192.168.1.50\Share), добавьте учётные данные хозяина в «Диспетчер учётных данных» и убедитесь, что не заблокирован порт 135 и динамический диапазон RPC.
Чем 0x00000709 отличается от 0x0000011b?
0x0000011b связана с изменениями в проверке подлинности RPC после обновлений безопасности печати и возникает при самом подключении к общему принтеру. 0x00000709 — про имя: Windows не смогла сопоставить переданное имя с существующей очередью печати.
Можно ли просто включить RPC через именованные каналы, чтобы заработало?
Технически да — параметром RpcUseNamedPipeProtocol, но Microsoft этот вариант не рекомендует: для него обычно приходится отключать проверку подлинности RPC и включать небезопасный гостевой доступ SMB, то есть откатывать исправления уязвимостей печати. Правильнее открыть порты для RPC по TCP.