group policy

Posted on 2005-04-26
Last Modified: 2012-03-29
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.
Question by:millerdog
    LVL 18

    Expert Comment

    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).

    Author Comment

    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?
    LVL 13

    Accepted Solution

    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.
    LVL 9

    Expert Comment

    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
    LVL 20

    Assisted Solution

    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


    LVL 20

    Expert Comment

    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

    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Join & Write a Comment

    Numerous times I have been asked this questions that what is it that makes my machine log on so slow, there have been cases where computers took 23 minute exactly after taking password and getting to the desktop. Interesting thing was the fact th…
    Recently, I had the need to build a standalone system to run a point-of-sale system. I’m running this on a low-voltage Atom processor, so I wanted a light-weight operating system, but still needed Windows. I chose to use Microsoft Windows Server 200…
    This video discusses moving either the default database or any database to a new volume.
    Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…

    729 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    19 Experts available now in Live!

    Get 1:1 Help Now