• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 27824
  • Last Modified:

Set Default Printer via Group Policy

How do I set the default printer for all users that log onto my workstations?

I would prefer to do this via group policy, but any other means that would allow for a change BESIDES touching every user account or computer would be helpful.
1 Solution
How do I set the default network printer for all new users of a Windows XP workstation?

When a new user logs onto a Windows XP workstation for the first time, they do not have a default printer configured. If you want to alter this behavior, modify the Default User profile to contain the default network printer:

1. Replace the server (jsi001) and printer share (HP2250) with the values appropriate to your network in the following text. Copy / Paste it to a C:\TEMP\NewStuff.reg (or similar) file:



[HKEY_USERS\TempHive\Software\Microsoft\Windows NT\CurrentVersion\Devices]

[HKEY_USERS\TempHive\Software\Microsoft\Windows NT\CurrentVersion\PrinterPorts]

[HKEY_USERS\TempHive\Software\Microsoft\Windows NT\CurrentVersion\Windows]

2. Use tip 3970 to run:

ModifyProfile.exe /PROFILE:"C:\Documents and Settings\Default User\NTUser.dat" /REG:C:\TEMP\NewStuff.reg /KEYNAME:TempHive

NOTE: You can use PsExec.exe or Workstation.bat to perform this process on remote computers.

NOTE: See Add local and remote printers from the command line.
mrichmonAuthor Commented:
Unfortunately this will not work for a couple reasons:

1) The settings for the default user - but my new users do not get the default user profile - they are using a required mandatory profile from Active Directory

2) It requires the format \\server\printer but there is no server name that I know of - just the IP....

And the printers are already added as local printers to the machines...
The server name can be replaced by the IP address, the server name is nothing but the computer's name that you see in the my network places list.

You can do the same thing with the registry tip above by exporting the values into a *.reg file.  Then you can create a shortcut in the startup folder to add the information to the registry:

regedt32 /s "C:\ChangeDefaultPrinter.reg"

To change the default printer setting, I think all you have to change is this registry key:
      HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\Device

You can get the entries for what to put for each printer from this registry key, you take the name of the key followed by a comma, followed by the contents of the key:
      HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Devices
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

mrichmonAuthor Commented:
There is no computer name in my network plcases.

Those registry keys have to be done per machine...

I need to be able to change this as needed - like a group policy setting
Aland CoonsSystems EngineerCommented:
mrichmonAuthor Commented:

I have already explored the first 2 of links.

Link #1 - No information about default printers - have you looked at the document or even the Group Policy settings?  I have in depth.

Link #2 - this does not address simply setting a printer that is already added to the computer as the default.  It doesn't do what I need

Link #3 - not even on the right topic.

You could do a login script that runs regedt32 like I mentioned above.  And if you want, you can put the reg file on a network location.
mrichmonAuthor Commented:
Yes and I have explored the login script option, but it isn't really as flexible as I would like.  The login script has to be added
to every domain account and based on some other factors a logins script isn't ideal.

ALthough you are correct in that it is a posibility in most cases.  If I don't get any actual workable answers for my situation I will award
your login script idea the points.
I know this solution still includes a script but, you can put the script and reg file mentioned above in a network share. Then attach a group policy to the OU containing your users or computes and setup the script as a startup or logon script depending on you needs. So you don't need to touch each AD account. just administer the script from one place.
Ok octree - you are 4 years late on that answer :) - so not likely to help mrichmon much.  However, in the name of helping anyone else who happens along this discussion (which I assume was octree's intention)-  I would like to add that using loopback processing can let you tie the script to the computer and not the user - if you want the printer to change based on where the user logs in (often helpful).  Also when writing the login script, printer names can be a bit strange, I recommend logging on setting the printer as your default printer and then taking a look at the registry to see how it is described.

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\windows   default printer is labeled device

Editing Reg through login script:

I know is is a bit late, but it is still useful.  You can use GPO to run this script:

Set WshNetwork = CreateObject("WScript.Network")
WshNetwork.SetDefaultPrinter "\\printerserver-OR-ip\printer"
Back in 2004 when the question was posted I'm sure Group Policy Preferences were a mere amoeba in Microsofts thoughts. However adding printers and setting defaults can all be done via GPPs now.



Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now