Jump to content

Recommended Posts

Posted

Hi,

 

Does anyone have any advice for deploying printers?

Currently applying printer preferences is our longest hang time when a user logs in, and we're looking for a way to speed this up if at all possible.

 

Our printers are deployed via GP using security groups for targeting, using a user configuration to deploy the drivers.

On order 1 we have a delete all so that users don't have a printer from the other end of the school mounted by mistake, then the rest of the printers are added.

 

Screenshot_1.jpg

 

Is there a more elegant way to achieve this? I'd love to find a way to get the right printers mounted on the right machines without having to uninstall and re-install them every time a user logs in.

 

Thanks

 

David

Posted (edited)

EDIT, Sorry re-read your post

 

I would try changing replace to update (or create) on the printers, you have already removed them all, I believe with replace, even if the same user is using the same PC it will try remove the printer (even if not installed) and re-add it, hense the hang. Alternatively, could you not add the printers to specific PC OU's, so there aren't as many printers to look through to check if it should be added?

Edited by smithson83
Posted
Chaning replace to update wouldn't change anything as the first thing to run is the delete all command. We already have OU's set up for the targeting of the printers.
Posted
Chaning replace to update wouldn't change anything as the first thing to run is the delete all command. We already have OU's set up for the targeting of the printers.

 

well i suspect thats why its slow if you remove all printer drivers then reinstall several its going to take a measurable amount of time just to copy the drivers from the server to the pc and thats without installing them. You may do better off using gpp to deploy printers to pcs rather than users (using loopback so you can do it using the same settings) and kill the delete or at least do a more specific delete to only re move "wrong" printers so it doisent have to reinstall drivers every login

Posted
well i suspect thats why its slow if you remove all printer drivers then reinstall several its going to take a measurable amount of time just to copy the drivers from the server to the pc and thats without installing them. You may do better off using gpp to deploy printers to pcs rather than users (using loopback so you can do it using the same settings) and kill the delete or at least do a more specific delete to only re move "wrong" printers so it doisent have to reinstall drivers every login

 

I know that's why its slow, what I'm trying to find is a way to avoid having to do that

 

but how will that cope with users logging in in different locations that have different printers? We don't want users to end up with 20 odd printers on their account

 

I thought about using the GPP to target computers instead of users, but assumed there was a reason why this hadn't already been done.

Does anything have to change for that or is it as it seems?

Posted

I spent many months trying to make the 'Applying Group Policy Printers' process faster on logon. However no matter what I tried, it was always very slow.

 

I ended up writing a simple VBS logon script, which adds the relevant main printer depending on which OU the computer is located, sets it as default and also adds secondary printers if required. Plus another script that installs the desired printer depending on computer name, mainly for specific computer that require a different printer to the rest of the computers in an OU.

 

As our staff accounts are roaming profiles, they would have the problem you describe, a build up of printers installed on their profile. I got round this by using a .bat log off script which runs ADPRINTX with the command /f which deletes all printers on the profile quickly on log off.

 

I have to say, it all works very well. Reliable and quick, really quick. The only occasional problem we get is when people log on too soon after the logon screen appears on some machines (particularly Dell machines for some reason), the NIC isn't fully connected to the network so they get a script error, but this rarely happens.

 

If you would like a sample of this script to help you test it, please let me know.

 

Cheers,

Posted

Hi Davidcvs,

we deploy all our printer via gop some set on loopback so they become default printer (some room we have B&W Laser and A3 Canon inkjet).

all rooms have it's own OU group in AD and each printer deploy only to that OU. all user log off script have below script to remove any old network printer and work quickly.

we have server 2012 R2 as print server, we share printer and right click and select deploy via group policy select computer (Make sure you create GPO first) also add following so it will not prompt you any security warning.

 

Policy Setting Comment

Point and Print Restrictions Enabled

Users can only point and print to these servers: Disabled

Enter fully qualified server names separated by semicolons

Users can only point and print to machines in their forest Disabled

Security Prompts:

When installing drivers for a new connection: Do not show warning or elevation prompt

When updating drivers for an existing connection: Do not show warning or elevation prompt

 

save as .vbs and apply under user log off script.

 

******* script *************

Const NETWORK = 22

Set objNetwork = CreateObject("WScript.Network")

strComputer = "."

Set objWMIService = GetObject("winmgmts:" & strComputer & "\root\cimv2")

Set colPrinters = objWMIService.ExecQuery("Select * From Win32_Printer")

 

For Each objPrinter in colPrinters

If objPrinter.Attributes And NETWORK Then

strPrinter = objPrinter.Name

objNetwork.RemovePrinterConnection strPrinter

End If

Next

 

****** end of script ******

 

Hope this help.

Posted
I know that's why its slow, what I'm trying to find is a way to avoid having to do that

 

but how will that cope with users logging in in different locations that have different printers? We don't want users to end up with 20 odd printers on their account

 

I thought about using the GPP to target computers instead of users, but assumed there was a reason why this hadn't already been done.

Does anything have to change for that or is it as it seems?

 

You can add to the existing Item Level Targeting to also check the OU or security group that the computer is in and assign printer based on that. This works well if you've got printers that staff should have access to in certain rooms but not pupils in that room. For any printer in a room that everyone should have then I'd go with setting up the printers through GPP on the Computer Settings side (with targeting as normal) as that will set them up at start up rather than login. You can probably just copy/paste them into other side of GPP from the current one so you just have to adjust whatever targeting you have in place.

  • Thanks 1
Posted (edited)
You can add to the existing Item Level Targeting to also check the OU or security group that the computer is in and assign printer based on that. This works well if you've got printers that staff should have access to in certain rooms but not pupils in that room. For any printer in a room that everyone should have then I'd go with setting up the printers through GPP on the Computer Settings side (with targeting as normal) as that will set them up at start up rather than login. You can probably just copy/paste them into other side of GPP from the current one so you just have to adjust whatever targeting you have in place.

 

That's brilliant I'll test that out this afternoon with a few computers.

 

thanks for the help everyone

Edited by just_david

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...