На компьютере с Windows 11 столкнулся со странной проблемой при установке локального принтера. Пользователь не мог установить принтер ни с помощью официального установщика, ни вручную.
При попытке добавить новый принтер вручную оказалось, что список доступных портов пустой. На компьютере полностью отсутствуют порты печати, которые можно использовать для создания принтера.
Если открыть консоль управления печатью (
printmanagement.msc
), в ней тоже видно, что на компьютере по какой-то причине были удалены все порты печати. Хотя служба Print Spooler запущена.
При попытке вручную создать порт печати из диалога Printer Server Properties (
rundll32 printui.dll,PrintUIEntry /s /t1
), также появляются ошибки:
Add Printer Ports Operation could not be completed. Specified port cannot be added.
Или:
Add port dialog cannot be displayed. The filename, directory name, or volume label syntax is incorrect
Проблема как оказалось, была вызвана повреждением веток реестра, в которых хранятся настройки сведения о мониторах портов печати, включая: типы портов Local Port, Standard TCP/IP Port, USB Monitor (и другие) и назначенные драйвера, а также имена портов для печати (LPT1, COM1, FILE). Проверьте в реестре содержимое этих веток:
-
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
-
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports
В моем случае в обоих ветках отсутствовала большинство записей. Для решения проблемы нужно импортировать на проблемный компьютер REG файл с содержимым этих веток реестра со здорового компьютера.
Для Windows 11 24H2 готовый REG файл выглядит следующим образом:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports] "COM1:"="9600,n,8,1" "COM2:"="9600,n,8,1" "COM3:"="9600,n,8,1" "COM4:"="9600,n,8,1" "FILE:"="" "LPT1:"="" "LPT2:"="" "LPT3:"="" "XPSPort:"="" "Ne00:"="" "Ne01:"="" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Local Port] "Driver"="localspl.dll" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Microsoft Shared Fax Monitor] "Driver"="FXSMON.DLL" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port] "Driver"="tcpmon.dll" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\Standard TCP/IP Port\Ports] "StatusUpdateInterval"=dword:0000000a "StatusUpdateEnabled"=dword:00000001 "LprAckTimeout"=dword:000000b4 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\USB Monitor] "Driver"="usbmon.dll" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors\WSD Port] "Driver"="WSDMon.dll"
- Перед импортом REG файла остановите службу Print Spooler:
Stop-Service spooler
- Импортируйте reg файл (двойным щелчком)
- Запустите службу:
Start-Service spooler
- Проверьте, что в свойствах принт-сервера появились пропавшие порты печати.
После восстановления портов и мониторов печати рекомендуем проверить и исправить целостность системных файлов и образа Windows на компьютере с помощью команд:
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow