Windows remote desktop remote printing

Как пробросить принтер через RDP

Инструкция поможет тем, у кого не получается запустить печать принтера посредством удаленного рабочего стола (RDP). Настройку можно выполнить самостоятельно, для этого следует выполнить шаги, изложенные ниже.

Зайти в настройки подключения к удаленному рабочему столу и проверить, выставлена ли функция проброса локальных ресурсов к серверу.

Сначала необходимо найти RDP-ярлык и нажать по нему правой кнопкой мышки. В контекстном меню найти «Изменить». В открывшемся окне третьей вкладкой слева будут «Локальные ресурсы», в них должна стоять галочка на графе «Принтеры».

Настройки окончены для тех принтеров, которые поддерживают «Easy Print». В противном случае настройка продолжается – переходите к шагу номер два.

В случае, когда модель выпущена без поддержки «Easy Print», дополнительно придется на сервер устанавливать драйвера.

Зайдите на сервер через «Пуск». Сделать это легко, достаточно выбрать приложение «Диспетчер сервера».

Нужно зайти на вкладку «Роли», чтобы создать еще одну роль.

В графе «Роли сервера», как на скриншоте, откроется длинный список, в нем следует выбрать «Службы печати», затем нажать кнопку «Далее» два раза. После чего кликнуть по кнопку «Установить» и выполнить перезагрузку сервера.

Зайти еще раз в «Диспетчер», найти вкладку с конфигурацией и в ней – локальных пользователей. В группах есть «Print Operators», в нее нужно добавить учетку администратора.

Следующим шагом сделать log off – log on.

Далее нужно зайти на официальный веб-сайт компании, которая выпустила принтер, и выгрузить драйверы модели.

Cнова зайти в «Диспетчер», во вкладку с серверами печати и ввести никнейм ПК, производящего подключения принтера.

В «Имя драйвера» обязательно должно значиться «Remote Desktop Easy Print».

Зайдите еще раз в раздел с серверами печати, найдите никнейм Вашего ПК и графу с драйверами. Щелкните по ним правой кнопкой мышки и нажмите «Добавить».

Желательно выбрать 64 версию.

Настроить, чтобы установка шла с диска, нажать «Обзор» и выбрать файл *.inf

База знаний

Проблемы с печатью из RDP или Терминальный сервер Windows VS Принтеры

То, что RDP и принтеры понятия хоть и совместимые, но плохо, известно давно. Но функционал этот всегда был востребован и будет востребован в будущем. Проблемы печати с терминальных серверов Windows уже много лет являются головной болью для большинства системных администраторов и ИТ-менеджеров. В рамках данной статьи мы рассмотрим основные методы «борьбы с глюками» печати из сессий удаленных рабочих столов.

Сразу оговорюсь, что в рамках этой статьи печать из терминальных ферм на Citrx’е не рассматривается.

Большинство проблем с печатью на терминальных серверах вызваны установленными на них драйверами принтеров.

  • Из практики, больше всего проблем с драйверами от принтеров фирмы Cannon. Не воспринимайте как анти-рекламу, просто опыт.

На верхнем уровне причины этих проблем можно разделать следующим образом.

  1. Неидентичные версии драйверов на клиентской машине и на терминальном сервере.
  2. Нестабильность драйверов в терминальной среде.
  3. Высокая нагрузка на службу «диспетчер очереди печати»
  4. Отсутствие работоспособных драйверов для терминальных серверов.

Итак, перейдем теперь к решениям.

Читайте также:  Windows 10 про с драйверами

Версии драйверов.

Драйверы различных версий на сервере и клиентских машинах (в общем, то это первое, что нужно проверить) должны быть идентичны в т. ч. и с точки зрения версии PCL. Если версии отличаются то, скорее всего печати нам не видать. Также можно отметить, что когда стоит выбор использовать PCL5 или PCL6, лучше устанавливать драйверы PCL5, т.к. на практике они работают намного стабильнее.

Высокая нагрузка и нестабильность драйверов в терминальной среде.

Нестабильная работа драйверов и, соответственно, перегрузка ими диспетчера очереди печати (по русски – «спулера») вызывала (и будет вызывать, если не чего не делать), остановку всего процесса печати на сервере, а иногда и остановку (зависание) ОС сервера в целом.

До выхода Windows Server 2008, штатных средств по оптимизации нагрузки спулера в ОС Windows Server не было. Поэтому единственным адекватным методом борьбы с регулярным зависанием спулера (и соответственно, массовыми звонками в тех. поддержку от разгневанных пользователей), был bat-ник, по расписанию превентивно перезапускающий процесс spoolsv.exe (например, утром и в обеденное время), освобождая спулер от висящих запросов и очередей.

С выходом Windows Server 2008 появилась возможность изоляции драйверов принтера. Данная возможность позволяет драйверу принтера подгружать задачи не в Spoolsv.exe, а специальный под-процесс PrintIsolationHost.exe. При такой конструкции, зависание драйвера одного принтера, не вешает всю очередь печати, поскольку встает только один под-процесс PrintIsolationHost.exe, а сам процесс спулера spoolsv.exe остается работоспособным.

Для того чтобы включить изоляцию драйверов принтеров, нужно использовать редактор локальной групповой политики (gpedit.msc):

  • Откройте gpedit.msc и последовательно перейдите:
  • Параметры компьютера (Computer Configuration) -> Административные шаблоны (Administrative Templates)-> Принтеры (Printers).
  • Среди перечня политик нужно включить следующие:
  • Выполнить драйверы принтеров в изолированных процессах (Execute print drivers in isolated processes)
  • Переопределить параметр совместимости выполнения драйвера печати, назначенный драйвером печати (Override print driver execution compatibility setting reported by print driver)

Выполнив данные незатейливые действия, мы сильно разгрузим спулер, резко снизив частоту его падений, уберём «деревянный костыль» в виде bat-ника и, как результат, повысим лояльность пользователей и руководства к ИТ :-).

К сожалению, данная функция никак не решит проблему отсутствия работоспособных драйверов для терминальных сред или слишком высокой нагрузки на спулер (например, когда на сервере установлены 10-ки разных драйверов разных устройств).

Поэтому помимо изоляции драйверов в Windows Server 2008 также появилась ещё более ценная функция под названием TS Easy Print (Remote Desktop Easy Print). О ней пойдет речь ниже.

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

В ситуации, когда с терминального сервера необходимо печатать на 10-ках различных печатающих устройствах (в зоопарке из принтеров, если быть точнее), многие из которых не имеют рабочих драйверов для терминалов, следует применять функцию TS Easy Print.

Главным достоинством этого решения является то, что в принципе не нужно устанавливать драйверы для каждого устройства на терминальный сервер. Вместо этого используется унифицированный драйвер Remote Desktop Easy Print и, соответственно, все операции по печати идут мимо спулера и обслуживаются напрямую клиентской машиной. Благодаря этому значительно повышается стабильность работы, как и самого спулера, так и терминального сервера в целом.

Для использования TS Easy Print не требуется дополнительной установки серверных ролей и компонентов. Требованиями являются лишь наличие на клиентской машине RDP клиента версии 6.1 или выше и .NET Framework 3.0 SP1 или выше.

Читайте также:  Время открытия файла windows

Для того чтобы явно определить, что нужно использовать на терминальном сервере TS Easy Print, необходимо также воспользоваться редактором локальной групповой политики (gpedit.msc):

  • Откройте gpedit.msc и последовательно перейдите:
  • Параметры компьютера (Computer Configuration) -> Административные шаблоны (Administrative Templates) -> Компоненты Windows (Windows Components) -> Службы удаленных рабочих столов (Remote Desktop Services)-> Узел сеансов удаленных рабочих столов (Remote Desktop Session Host) -> Перенаправление принтеров (Printer Redirection).
  • Среди перечня политик нужно включить следующую:
  • Использовать в первую очередь драйвер принтера Easy Print удаленного рабочего стола (Use Terminal Services Easy Print driver first)

После того, как политика активирована, можно удалить лишние драйверы принтеров с сервера.

  • Будьте внимательны. Нельзя удалять Terminal Services Easy Print (он же Remote Desktop Easy Print) и Microsoft XPS Document Writer. Без них перенаправление печати работать не будет.

Удалить лишние драйверы можно с помочью панели управления.

· Панель управления (Control panel) ->Принтеры (printers)-> Свойства Сервера (Server Properties)-> Драйверы (Drivers).

Сразу же оговорка. При печати, используя TS Easy Print могут возникнуть проблемы с отображением шрифтов (т.е. «иероглифы»). Решается проблема просто – нужно установить последнюю версию NET Framework на клиенте.

Дополнительно следует также отметить, что решить проблему «виснущего и вечно падающего» спулера можно также используя коммерческий продукт ScrewDrivers.

ScrewDrivers имеет клиент-серверную архитектуру. Соответственно, серверную часть нужно установить на сервере где планируется использовать печать из терминальных сессий, а клиентскую — на рабочих станциях пользователей.

Клиентский компонент ScrewDrivers создает на терминальном сервере виртуальные принтеры, которые соответствуют локальным принтерам на клиентской машине. Решение вполне стабильное и проверено годами во множестве компаний. Но у него есть один недостаток – оно в отличие от TS Easy Print платное :-).

Из вышеописанного можно сделать вывод, что вечные проблемы с печатью на терминальных серверах решаемы, а решения этих проблем стабильны и проверены.

  • Пробуйте, тестируйте, экспериментируйте и все у вас будет работать долго и счастливо!

Windows remote desktop remote printing

This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.

Answered by:

Question

We setup Remote Desktop Services and made sure options were selected to redirect the local printers on each user’s setting. We also made sure the option to block it was unchecked. They can print to networked printers at their location but can’t print to local printers at their location. These are printers that are plugged in directly to their computers or laptops. The drivers are installed on the server.

When I look on the server the printer shows that there are documents in the print queue that have error — printing.

I look in the event log and there are error entries for TerminalServices-Printers:

An internal communication error occurred. Redirected printing will no longer function for a single user session. Check the status of the Remote Desktop Device Redirector in the System folder of Device Manager.

Log Name: System

I look in Device Manager and the Remote Desktop Device Redirector Bus Properties status says, «This device is working properly.»

Читайте также:  Icon and desktop windows

What could be causing these printers to error and not print?

Answers

I found a solution that worked in another forum.

If your printer is connected by USB then RDP will not forward the port. To overcome this

1. Click Start, click Run, type regedit, and then click OK.
2. Locate and then click the following key in the registry:
HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client\Default\AddIns\RDPDR
3. On the Edit menu, point to New, and then click DWORD Value.
4. Type FilterQueueType, and then press ENTER.
5. On the Edit menu, click Modify.
6. Type FFFFFFFF, and then click OK.
This enables all ports on the client to be redirected.

To work around this problem on a client computer that has a multifunction print device, change the port that the multifunction print device uses from DOT4 to an LPT port.

That worked. And I didn’t have to install the printer on the remote computer. That was the best part because my users were getting confused. They saw all these printers available to print to because I had installed them all on the remote and they really couldn’t print to them because they were either at another location or attached to a different user.

This way they only see the printers that are redirected through their connection. Much better way to do this.

Windows remote desktop remote printing

This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.

Answered by:

Question

Sorry if I have this in the wrong forum

I have a Windows 10 Laptop at home that I use to connect to my office PC using Remote Desktop Connection. The office PC is a Windows 7 Pro 64bit Computer. The connection is fantastic except the printing is a nightmare. This isn’t a terminal server — Just a simple Remote Desktop Connection to the Office Win 7 PC.

On my home network I have a HP OfficeJet Pro 8720. I have the latest drivers installed for it and I’m able to print perfectly from my laptop. I am not able to print to this local printer from within my Remote Desktop Connection. The printer just doesn’t show up!

I have reinstalled the drivers on my laptop numerous times. I have also installed the drivers on the Office PC numerous times. I have of course selected ‘Printers’ from the Local Devices I want to use from the Local Resources tab. I have checked permissions of the printer on my Laptop and allowed the Everyone group every single checkbox possible.

In event viewer I keep getting Event ID: 1111 and when I read about it everyone recommends that ‘Printer’ should be disabled if you want that message to go away. I’m sure that only works when you actually don’t have a local printer that you want to use. In my case I have a printer that I want to use.

I have also turned off my firewall and I am now completely out of ideas what to do next. Any help would be appreciated 🙂

Оцените статью