Windows Server 2016 – Installing a printer driver to use with redirection

How to change the time zone on Windows Server 2019

When a user connects to an RD session, if the client and server are configured properly, that connection will attempt to set up printer redirection between the RD session and the local computer. Specifically, what happens is that every printer that is installed onto the local computer will be configured as a separate printer inside the user’s RD session. This is the feature that enables users to be able to print to their local printers, even if the information that they are accessing and printing is located halfway around the world.

When the RD connection builds these virtual printers, it attempts to use real printer drivers for them. For example, if the printer is an HP LaserJet 4100 and the RDSH server has the HP LaserJet 4100 driver installed, then when that printer gets set up inside the user session, it will utilize that existing, official driver. If the user logs into an RDSH with a printer whose driver does not exist on the RDSH server, however, by default that printer will not be installed. There is a setting in the same configuration page where we enable or disable printer redirection on the RDSH server collection that can partially help with this. If you select the option on that screen for Use the Remote Desktop Easy Print print driver first, when the real driver doesn’t exist for a particular printer, it will use a generic driver that may or may not actually work with the printer. This can certainly help bridge the gap when it comes to missing printer drivers but doesn’t always solve the problem.

The best way to make sure your users are going to be able to print properly is to install the real driver onto the RDSH. So what’s the point of this recipe? Who doesn’t know how to install a printer driver, right? I write this because most printer driver software packages are now full-blown applications, and we don’t need a quarter of what comes with them. Driver install packages consume much more space than necessary for use with RDS, and we have to take into consideration that we are installing actual applications, which could potentially show up inside user sessions and cause confusion. So what is the answer? Extract the simple driver files from those driver packages and use just the files themselves in order to install the driver into Windows. Let’s do one together so you can see what I’m talking about.

Getting ready

We will be installing this printer driver onto our RDSH server running Windows Server 2016. For our example, we will be using a Brother MFC-J625DW printer, since that is one I installed for a customer just recently. Brother is usually good about providing a simple, small driver download that contains only the files we need for the driver itself.

How to do it…

Let’s work together to download and install this printer driver onto our RDSH so that it can be used for printer redirection:

  1. First, download the driver files onto your RDSH server. Make sure to choose the driver for the server’s operating system, not the client. So when possible, I am going to choose Windows Server 2016. You can see in the following list that Windows Server 2016 is not an option available to me with this particular model of printer, and that is okay. In the event that the actual operating system driver is not available, you can often use one from a recent version of Windows and make it work. I will attempt to download the Windows 10 64-bit driver and see if it will install onto my Windows Server 2016. Alternatively, I could probably also get the Windows Server 2012 R2 64-bit driver to install as well:
  1. We can see that there are a few different options available for downloading the driver. The first that is presented is the full software package, but that is 134 MB and remember we said earlier that the full software package is totally unnecessary on an RDS server. We only need the driver. A little further down the page, there is an option for Add Printer Wizard Driver. This is exactly what we need, and what do you know, it’s only 23 MB!:

With most driver downloads, you will also have to double-click on it once downloaded in order to extract the files.

  1. Right-click on your Start flag and choose Control Panel.
  2. Navigate to Hardware | View devices and printers.
  3. Click on any existing printer in the list and then click on the button in the top Taskbar that says Print server properties:
  1. Browse to the Drivers tab. This displays a list of currently installed printer drivers on this server. Then click the Add… button.
  2. Click Next twice. We can leave the Processor Selection screen marked as only x64, since Windows Server 2016 only comes in 64-bit.
  3. Now click on Have Disk… and browse to the location of the driver files that you downloaded. You are looking for an INF file that typically sits in the root of that driver folder. Sometimes you will have to poke around a little until you find it, but the file is always an INF file:
  1. Once you have selected the INF file, the Add Printer Driver Wizard will now display a list of the drivers that are contained within that INF file. Choose the specific printer driver that you want to install and click Next:
  1. Click Finish and the driver will install. You should now see it in the list of printer drivers that are installed on this server:

How it works…

Installing printer drivers onto RDSH servers is a pretty common administrative task in environments where printer redirection is allowed. We walked through one of the nice, simple installers that was easy to extract and contained only the actual driver files that we needed. These kinds of driver downloads are perfect for our purposes here.

As you experience more and more of these driver installations, you will start to learn which manufacturers provide simple driver packages for this purpose and which ones do not. Ultimately, though, the software always contains the simple driver files; sometimes it’s just a matter of launching the huge installer program so that it places the files somewhere in a temporary location on the hard drive. What I normally do in these situations is launch the installer and walk it through whatever steps are necessary in order to see that it is unpacking/extracting files. Once it has done that, you don’t have to run any more of the wizard to install the software applications because you know that the driver files you need are sitting on the hard drive of the server somewhere. We just need to find them. Using a utility such as FileMon can help identify file locations that have been recently modified, and is a pretty quick way to track down those driver files that are usually hidden away in a temp folder. Once you find the files, you can copy and paste them into a more permanent folder for driver installation purposes, cancel out of the install wizard, and walk through the steps in this recipe to install that driver manually instead.

Comments are closed.