Link to home
Start Free TrialLog in
Avatar of cheesebugah
cheesebugahFlag for United States of America

asked on

Mapping printers


I am looking to map printers to client computers on our 2008/Win 7 network.  I have been scouring this site and the internet for a solution to this problem and am still not certain which way to go (GPO or logon script or a combination)?  I want to assign certain shared (on a printserver) printers to certain "areas" within our main building site.  That way, users do not have to go far to get their print jobs.  I want to assign according to computer name or computer group, as we have roaming users who would take it with them and that just would not work.  We've already got issues with roaming users printing willy nilly all over the building.  I am new here and want to clean this up.  I would also like to assign default printers where applicable as certain computer groups print mainly to a certain printer.  However, some of the other computer groups have local printers that would naturally be their default.  I have read that assigning default printers is a problem with Group Policy on the computer side, so I'm thinking this might be best done via a logon script.  If someone is willing to help me with this, it would be most appreciated.  I know there are going to be questions, so fire away and hopefully we can work through this.

Avatar of Steven Wells
Steven Wells
Flag of Australia image

Link to home
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Cliff Galiher
Group Policy Preferences are the usual preferred way to push out printer settings with modern OSes. Logon scripts and Printer Deployment Policies are really for niche environments.

As far as pushing to computers, it isn't terribly difficult. For roaming cases, loopback processing can achieve this easily in most cases. This deploys the printer in the user context, but since it is tied to a machine GPO, it still allows you to do so based on the machine itself.
Avatar of cheesebugah



Sounds great!  Now how do I assign a default printer to that group?
Also, how do I say in a GPO, if the printer is already installed, do not reinstall?  Or, do I have to uninstall and reinstall every time to prevent any hiccups?  Or is it not necessary to do this in a GPO?
I am not trying to be difficult, I just don't want to miss anything.  I have been researching this for sometime and there are issues.
The only way I can see to assign a default printer to a computer group cleanly is via a logon script.
If you use group policy preferences to assign a printer you can do set as a update so if the printer queue is already mapped it won't try and replace it. You use the merge GPO settings and adding gpo to computers OU. Easy. You will need to test to ensure it works well for your environment.   I use it in one of my offices of 70 workstations and works very well.
You can also set to default if you wish. You create one policy and use security groups, one security group per printer

Your suggestions are greatly appreciated.  Can you elaborate on your last two posts or provide a link please?

Would I have to change the GPP to "update" after the policy has been ran and the printer is installed for the group of computers the policy is assigned to?  Or when the policy is created, do I just set it to "update" initially?
If this is the case, what if a new computer enters the computer group?  Would I have to set it back to "create" until the GPP has been pushed to the new computer and then back to "update?"
The update option will create a new printer if it doesn't exist, and update an existing printer with new settings.  The "create" option will *only* create a printer if it doesn't exist. If it exists, it will *not* update settings. So consider "update" to be superset of "create."
Hi, yes Cliff is correct, Use Create. I have just checked my GPO that I am using.   I actually assign the GPO to my Users OU and then use the option to Create, then use item level targeting to check if Computer is in Group. I then have all my printers in the policy.
Thanks guys for the input.  Item level targeting?  I have not used this before.  Is this going to prevent roamers from piling up mapped printers though?
Do any of you know the order in which GPO's, logon scripts, etc. get applied?
Hi, if you use logon scripts and GPO Preferences they all get applied, GPO Preferences get applied before Logon Scripts.

Users may get lots of printer mappings if they use lots of computers. You can also set the option to remove when policy no longer applies.
We have 7 sites.  Sometimes roamers go from site to site.  I can see this becoming a nightmare.  I'm not real confident in a GPO's ability to remove printers.  Would this be based on where the user logs on, or group membership, or ?????
You will need to test in your environment to see what works best for you,   GPO Preferences are the way forward. They are pretty reliable and make it easy for changes to be made.   If you use computer group memberships, it's easy to update as computers get changed and replaced. The policies can also be configured to remove when no longer applying, ie, the user logs into another computer. I just depends on how you want to work.
I just don't see how a GPP can remove a printer when the user logs into a different computer in a different computer group with a different GPP assigned to it?  I appreciate you sticking with me and my ongoing questions.
In the GPO there is a setting to remove this item when it no longer applies. It does change the action to be a replace, but this could be one method you could use.   We are limited by microsoft and how they implement their policies, perhaps you need to do both logon / logoff scripts and GPO preferences to meet your objective.

That is what I am thinking.  I think I'm going to need a combo here.  Maybe do the bulk of the work with a GPO and a little cleanup with a logon/logoff script?  I'm not sure at this point.  It would be nice to hear from a logon proponent though.
I have and are using both. It is just a matter of what works best for the situation. Good luck
Logon scripts are just unwieldy to manage. You should be able to do this with just GPP. For easy identification and management, given what I understand of your needs, one policy per area should work. Have one GPP that removes all printers. Then have GPPs to "update" for printer(s) you want.

By linking the remove GPP higher in the OU structure or by changing link order, precedence will kick in and make sure the area printers are added after others are removed. This could add a delay to login times if there are many printers. But management is easier as you don't maintain remove lists in multiple GPOs. And a script would have to operate similarly with a similar login performance hit.

Truthfully there is *rarely* a reason for login scripts.
Everything that everybody has said here is good, and Group Policy Preferences is definitely the way to go to deploy printers.

But let me chime in with a few pitfalls that will help you avoid some tears when you try to set this up:

1) Use "Type 3 User Mode" drivers exclusively. The most common reason the printers don't appear on the client for mysterious reasons is because the drivers you used were Type 4 drivers. You need to look at the available drivers provided by the manufacturer and pick one that works. If they don't provide one... you're SOL. To check what type of drivers you have, install the printer on your server, then go to Devices and Printers, highlight any printer, then click the "Print Server Properties" button in the ribbon at the top of the window. Go to the Drivers tab. There you will see a list of all drivers you currently have installed on the server, and their Type. Check the event log on the clients for errors deploying the printer.

2) Use the "winprint->RAW" print processor if possible. Once you've added the printer to your server, go to Printer Properties->Advanced->Print Processor to check the setting. If your printer requires a third party print processor and the print processor is not deploying to the clients... your SOL.  Check the event log on the clients for errors if you suspect this is happening.

3) Turn off "SNMP Status Enabled" in the port settings if your printer doesn't support SNMP - e.g. if your printer status is showing as "Offline" all the time in Devices and Printers. To check the setting, go to Printer Properties->Ports->Configure Port and check the "SNMP Status Enabled" tickbox.

4) Configure the default settings for your printer in Printer Properties->Advanced->Printing Defaults. These settings (at least the ones that are supported by the driver) will be pushed out to the clients. If a particular setting doesn't make it over it's usually a driver issue - try another one, and if there isn't another one.... your probably SOL.

5) Setting the Default Printer in Group Policy Preferences is flaky at best... IMHO I would focus on educating your users to be aware of the Default Printer setting, and to set it themselves to the desired value. Consider the default printer to be a "user configurable option" that is their responsibility to know about.

Okay, so I thought I would give this GPP thing a shot today.  I have created the policy, linked it to one of our computers OU's and used ILT to target a specific security group, in which my computer is a member of.  It is not working.  The printer I selected is on our printserver and I have installed it locally previously, so I know the IP and path are correct.  I am having problems accessing the printserver via RDP at this time, so that step is currently unavailable.  I have ran gpupdate numerous times and logged off and back on several times.  Still, no printer.
This looks very cool though.  Has anyone tried the registry GPP under Preferences/Windows Settings?  Just wondering if you could set a default printer setting via this policy?
Set you GPO to link to the user's OU.
Check the event logs for any errors too.
Okay, I tried a different printer on the printserver and it worked?  What the heck?  Sounds like a driver issue?
Possibly. All drivers should be signed for them to install silently.
I am getting "access denied" error in the event logs.
Event ID:  4098
Source:  Group Policy Printers

You know what is weird, one of the printers that was not installing yesterday, is now showing up on the client.  Hmmm...I'm wondering if AD replication is taking its time here?  We do have several remote branch servers running backup DC's?  Although, one of the printers I'm trying to deploy installed right away yesterday?
I must be missing something.  This seems so easy to configure, yet it is not working properly.  Is there something I need to do under Print Management on the print server?  


If I am mapping printers via the computer side, why would I link the GPO to the Users OU?  I am just asking.  I can try that I guess, but it just doesn't make sense to me.  Your expertise in this topic is greatly appreciated.

The printers are mapping as a user hence linked to the users OU. I haven't had any issues with this.
None of my users are local admins.  Would this have anything to do with my problems?
Hi.  They shouldn't be. I would review your resultant set of policies and review event logs on computers (as admin) to see what messages are occurring.  Also check you have correct share names in your group policy.
I'm not one to give up the ship, but I've been trying to get printers to map for days now using GPP and I am having no luck at all.  I seemingly have tried everything suggested and some of my own ideas to no avail.  Is there a switch somewhere to turn GPP on or something?  This is bizarre!  Here come the tears!
Victory!  I went back up to the top of the post and started from the beginning and it is working!  Hallelujah!  Thank you for all of your help, especially Steven Wells.