Windows Server 2012 Essentials : Add a Network Printer
October 24, 2012 21 Comments
I have seen and heard of people struggling to install printer drivers in mixed x64 and x86 environments, it has been a problem for a long time now, probably as far back as XP x64, certainly it was an issue with SBS 2008.
The problem being in order to install a printer on the Server, you need the x64 bit driver, but on a client pc you may be on x86 (32Bit) Windows, so you need a different driver.
Essentials 2012 is no different. So, i thought i would just get an example together using a printer i have here in the office, an HP Laserjet 3055. This is a good example actually because when you install it to WSE12, it picks up a valid driver, but there is no equivalent driver for Windows client available from HP.
First, let’s add the Printer to the Server.
From Start, choose Control Panel.
Inside Control Panel, go to View Devices and Printers.
Chose to Add a Printer.
Assuming your printer is not found, go to ‘The Printer i want was not listed’
Next, chose ‘Add Local or network printer as Administrator’
The scan should run again, and then you can chose, ‘Printer not listed’
The printer i am adding is connected to the network, so i am choosing to ‘Add a printer using TCP/IP address..’
Type in the IP Address of the printer.
Windows will attempt to connect to the printer and find a driver…
You can chose to share the printer at this point, but i would change that to No for the time being.
Once that is installed, you will be back to the Devices and Printers window. Select your Printer and choose ‘Print Server Properties’ at the top of the window.
Switch to the Drivers tab, and you can see all the available drivers your server has for printers.
This is where we will add our x86 (32bit) Printer Driver. You will need to download that from your manufacturer. For this printer, and my Windows 7 x86 clients i have downloaded the HP Universal Printer Driver.
I have downloaded BOTH the x64 and x86 version, and Extracted the files to a folder.
Click on Change Driver Settings, then Add. The Add Driver Wizard will start.
First we chose the Architecture that the Driver is for, in this case it is the x64 driver we want.
Next you chose the Driver files. I will click on Have Disk, and browse the to the x64 universal print driver folder.
I can then chose which version of the driver to load from the folder, i don’t honestly know the difference, so i chose the top one.
Then you can finish the wizard.
You can then repeat this process, but chose the x86 driver, and then chose the x86 Universal Print Driver folder.
At this point we have now installed 2 additional print drivers.You can see those listed.
Now, we need to change the driver that Windows uses for the printer we installed. Currently if we shared the printer AS IS, x86 clients would search for a 32bit equivalent driver for the HP Laserjet 3055, which it will not find.
In Devices and Printers, double click your printer, and then go to Customise.
On the Advanced Page, you can use the Drop Down menu to select a different Driver. You will see the Universal Print Driver listed.
At this point we can now Share the printer. You can chose the Share name, and check the box to list the printer in the directory.
At this point, we have installed a printer, installed the drivers so it is available to x64 and x86 clients, and shared it to make it available to network users. You are now free to deploy the printer using your favourite method, either using Group Policy Preferences, or just having your users manually installing it.
Hope you find this useful.