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

group policy

Is there a way to create a group policy that will restrict what printers users see when they add a printer. Example: the sales group has 3 printers they can use, but when they add a printer, they see all the network printers and most are not any where near them, and I don't want them using the same printers that accounting uses, this would be to much for the printer to handle. The accounting printers are near some of the sales group, so they take what is closer by a step or 2, and bog down the printer. I would like them to only see printers that they neeed to add, which are printers that I want them to use. Hope this is enough info.
Dennis Miller
Dennis Miller
2 Solutions
How about using a login script that automatically maps the correct printers based upon location when a user logs in so that they don't have to manually add a printer?

This is what I do to ensure that the correct printers are available for each person.

Also, you can set the security access on each printer so that only the people you assign to that printer have the access rights to print to it? This is done just as setting file permissions on a file- security tab and then set the appropriate NTFS permissions for the user(s) or group(s).
Dennis MillerAuthor Commented:
This is a great answer, and if I can't find a group policy to create, then I will go that route. I was just hoping that there was a group policy that could do this. I was told that the new service pack that is out had 600 more policies and that there may be a way there. I really don't know, but I was hoping Microsoft  had something. The group policies are so many, that I and another admin, were trying to see if we could do this in group policy. If by the end of the day, I don't find an answer, I will give you the points. By the way, do you know if they have a script already made, as I have never wrote any, and I am sure I would mess it up?
To Install:
rundll32 printui.dll,PrintUIEntry /in /q /n"\\server\printername"

To set to default:
rundll32 printui.dll,PrintUIEntry /y /n"\\server\printername"

To uninstall:
rundll32 printui.dll,PrintUIEntry /dn /q /n"\\server\printername"

Just add these to a batch file and include in your login scripts, or setup a website where users can just click and link to the batch files.   GPO may exist but it would be the same amount of work, and wouldn't look as cool.
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

You can also set priority for the users so that even though they have access to a printer their print jobs will be delayed until all jobs with a higher priority has gone trough
Or if your using VB scripts instead of BAT. you can use the script below. It will setup mappings, it will download drivers, and it will set default Printers if you want.

Set objNetwork = CreateObject("WScript.Network")
' Forces script to skip errors (rem below line to see errors)
on error resume next
Dim WshNetwork
Set WshNetwork = WScript.CreateObject("WScript.Network")

WshNetwork.RemoveNetworkDrive "I:"
WshNetwork.RemoveNetworkDrive "M:"

WshNetwork.MapNetworkDrive "I:", "\\SERVERNAME\FILES"
WshNetwork.MapNetworkDrive "M:", "\\SERVERNAME\Share"

Set WshNetwork = CreateObject("WScript.Network")
PrinterPath = "\\SERVERNAME\iR5000"
PrinterDriver = "Canon iR5000-6000 PS3"
WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver
WshNetwork.SetDefaultPrinter "\\SERVERNAME\iR5000" 'SETS A DEFAULT PRINTER

Set WshNetwork = CreateObject("WScript.Network")
PrinterPath = "\\SERVERNAME\HP1300n"
PrinterDriver = "hp LaserJet 1300 PCL 6"
WshNetwork.AddWindowsPrinterConnection PrinterPath, PrinterDriver
' WshNetwork.SetDefaultPrinter "\\SERVERNAME\HP1300n"

WScript.Echo "Your Drive & Printer Mappings are complete and you belong to the MANAGEMENT Group" 'SETS A POP MESSAGE


And you can remove them with this.. sorry I forgot it on last:

Set WshNetwork = WScript.CreateObject("WScript.Network")
PrinterPath = "\\printserv\DefaultPrinter"
WshNetwork.RemovePrinterConnection PrinterPath, true, true
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

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