I am trying to deploy three printers on our network. I have added the role of Print and Document Services to our Domain Controller and then added the printers.

I have right clicked on the printers and clicked Deploy Printer.

I have two OU's for the computers.

  1. Ground Floor Computers
  2. First Floor Computers

I added a new GPO to each of the OU's and called it Network Print (Ground/First Floor). I selected the option to apply the GPO to the computers rather than the users.

On each of the computers I then ran gpupdate /force and then rebooted the computers twice.

The shared printers are still not showing up. I can run test prints on each of the printers from the server which works perfectly. The workstation however, don't.

The server is Windows Server 2008 R2 and the workstations are all Windows XP Professional with Group Policy Preferences extension installed.

Am I missing something glaringly obvious?

4 Answers 4


You haven't mentioned adding pushprinterconnections.exe to run in your Printer GPOs. You will need this to push printers to XP machines. You can get the file from Windows 2003 R2 Admin Tools by downloading pmcmgmt.exe and extracting it on an XP machine. Add this file to the GPOs in the Computer Configuration> Windows Settings> Srcripts(Startup/Shutdown).

  • Somehow I had missed the requirement for pushprinterconnections.exe! Thanks.
    – dannymcc
    May 2, 2011 at 13:03

I think one problem that you might find is that you cant add XP drivers in the Server 2008 R2 console. To install the drivers for XP you have to go to "\printeserver\Printers and Faxes" from an XP/srv2003 machine (32bit), click on the Server Properties box on your left in the Printer Tasks area. Select teh Drivers tab then Add.

and then im just gonna throw some technet links at you that might help for the GPO part:) Please make sure the computers are able to read the GPO also^^



good luck


We use this little vbscript to map printers according to security group membership on login.

Function MapPrinter (strServer, strShare)
    wscript.echo "Mapping \\" + strServer + "\" + strShare

'Set WshNetwork = WScript.CreateObject("WScript.Network") 
WshNetwork.AddWindowsPrinterConnection "\\" + strServer + "\" + strShare
'WshNetwork.RemovePrinterConnection "\\ServerName\Printer Share Name" 
end function

It may not be the optimal solution, but you could also do this via a login (BAT) script that implements the 'NET USE' command, or also via VBScript.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .