Microsoft Remote Desktop Terminal services use Printer redirection to run print jobs from the terminal sessions. When a printer is installed or shared by network to work with the local computer, it will be redirected to the Remote desktop session host. This will show as redirected printer in the RDP session. Users can use the redirected printer as the printing device and it will directly send the print jobs to the printer.
Printer redirection can be configured using the Microsoft Easy Print driver or installing the printer drivers in to the server. (This post does not cover about configuring printer redirection). Most of the time remote desktop printer redirection is configured using, installing local printer drivers in the Remote desktop session host server. Because this is faster than the easy print and also it will generate accurate print jobs.
But installing Printer drivers in the server is not a good option to large scale companies with many different printers. Because some printer drivers used to crash the Remote desktop session host Printer spooler.
Issue Summery
Printer spooler service getting stopped regularly. Also this will stop the print jobs and tend to hang the server by increasing the RAM and Processer utilization.
Following event can be seen in the event viewer.
Cause
Use of unsupported printer drivers for remote desktop printer redirection, multiple printer drivers, driver crash, 3rd party printer monitors or legacy drivers.
Resolution
Giving a permanent solution to this problem is really difficult. Because Microsoft haven’t provide any information about supported printers for Remote desktop printer redirection. Only way is to find the printer models by testing and experiences. This will prevent you from installing printer drivers which will cause to crash the printer spooler service. But if you are already having the spooler crash, use following methods to troubleshoot and resolve
1. Uninstall the Printer models starting the latest driver you have installed in the server.
Go to the Program and Features and uninstall the printer package. And check whether the driver is in Printer properties. If the driver still exists then select the driver and remove.
2. Uninstall the Printer drivers which you doubt
Sometimes you may doubt the printer drivers by how old the model is, you may installed an old Printer driver in the server, Use of similar drivers or the time frame you have installed the driver. Remove the selected drivers from Print server properties.
3. Remove drivers forcefully if they are not uninstalling.
If the drivers you are trying to uninstall is not removing from print server properties. These have to be removed forcefully. You have to delete the registry keys used by these drivers. This step have to do very carefully and only if it’s required. And before doing any changes to the registry, always take a backup.
Delete drivers from this registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers
4. Remove 3rd party Print monitors
Go to the following registry key and if there are any 3rd party print monitors, delete them from registry.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Monitors
After corrupted driver removed from the system, printer spooler service will start to work normally. You can monitor the application event log for spooler errors, event ID 1000 will represent the spooler crash.
Further to solving this issue, I’m recommending following ways to prevent this issue.
More Information
But as I told earlier, this is not a permanent solution. Using printer re-direction with Installed driver can give the following problems.
Terminal Works team came up with a more reliable solution called TSPrint to address the Remote desktop printer redirection. TSPrint is a small software that have to be installed in the Remote desktop session host and the client computer. It’s simple to implement and support RDS, VDI and Citrix Environments.
Using TSPrint, you don’t need to install printer drivers to Remote desktop session host servers. So it will prevent the printer spool crash issues and support legacy printers. Also it will map custom printer settings and paper sizes so you can get same width and height of a local printer output.
Terminal works have given a full feature trial of TSPrint, so you can test it before the production. It’s really easy to implement, following link has given step by step instructions.
http://www.terminalworks.com/remote-desktop-printing/downloads/documentation/TSPrintGuide.pdf
After TSPrint configured, print jobs can be send to TSPrint printer from the RDS Server. It will send the jobs directly to the client printer. TSPrint compress the content, so it’s faster than the Microsoft easy print and giving the same experience as printing from the local printer.
For more information visit the page - http://www.terminalworks.com/remote-desktop-printing
Hope this information is useful
Asitha De Silva
https://lk.linkedin.com/pub/asitha-de-silva/27/b09/429
References –
https://technet.microsoft.com/en-us/library/ff519249(v=ws.10).aspx