Autocreating Network Printers In Citrix Presentation Server 4
With my years of Citrix administration behind me, there is a single thing that you learn really quickly when administrating those environments: “Do NOT use client printersâ€. Mostly because they don’t ever work, secondly as you will end up in driver hell before you know it.
The old-fashioned solution for this was to ignore all client printers and put all printers that your users required on the network, use as less drivers as possible and hope it just works. Autocreated printers is a nice feature but this one also maxes out at about 1000 printers (Been there, done that).
Introduced in Metaframe XP (version 2) was the Universal Printer Driver but it didn’t really work that well.. This UPD became usable in Metaframe Presentation Server 3 (MPS3, version 3) and was further improved in Presentation Server 4 (MPS4, version 4 - obviously). Together with MPS4 came an entire rewrite and overhaul of the printing system, something that would do no harm. Well, unless you are used to administering MFXP and MPS3…
The issue I had with a recent setup of MPS4 is that, while you could do group-based autocreation of printers in MFXP and MPS3 this option had disappeared from the Citrix Management Console (CMC) as the entire printer management had moved to the Policies section of the CMC, again this is not a bad thing as such – just not very clear.
So how do you get group-based autocreated network printers in MPS4 ? It took me some time to figure it out but here goes :
[list][*]For each printer you have to create a policy, give it an obvious name such as “Create-*printername*â€.
[*]Enable the “Session Printers†option, add the corresponding printer to the list, change settings as required for your environment
[*]Apply the policy to a “User filterâ€, set your corresponding access group that goes with your printer[/list]
This will ensure that the printer is created at logon for each user of the corresponding access group that is located in your domain.
Now the problem remains that these printers are created at logon and deleted at logoff. This means that, should a user select a default printer in his profile, these settings are not saved as the printer objects are deleted before the profile can be saved.
To prevent this you have to set an additional registry key that will either prevent network printers from being created at logon (you don’t want this) or being deleted at logoff (you DO want this). The key to create set is HKLM/Software/Citrix/Print with DWord value ‘DefaultPrnFlags’. A DWord value of 0×00400000 will prevent printers from being created, a DWord value of 0×00800000 will prevent them from being deleted. Obviously the second value is the one to go for.
What you have done now is that printers are created at logon and no longer deleted at logoff.. If you add a user to a specified access group that controls a printer being created this printer will be added to the users session at next logon to your citrix server. However when you remove the membership the printer will not be removed automatically from the users profile, as the existing printers are not removed at logoff.. If this really is an issue you can always set printing permissions on your printers, this way the printer will still be visible but the user will no longer have any printing rights to it.
Links:
Citrix Support : Imported Network Printers Do Not Retain the Default Printer Setting








