Overview
There are several ways to configure printers for use in a XenApp session and administrators must carefully consider the available options and business needs. The type of printers and the printing environment, as well as user and administrative requirements, can dictate the most suitable method for configuring printers for users. Because applications run remotely and not on local client devices, an administrator must determine users printing needs and monitor their level of satisfaction with printing services. When a user prints from a published application, the print job originates on the XenApp server. As a result, considering the client printers and network printers in the environment can help formulate the printing strategy. XenApp provides access to enterprise-wide printing management, allowing administrators to control, secure and configure printing using policies.
In a non-XenApp environment, there are two types of printers: local printers and network printers. XenApp introduces a third type of printer, the redirected client printer.
Printer Type Local (Client and Server)
Description Local printers are connected to a client device or server and the local operating system directly spools the print job to a Windows client device or server, by default. Network printers are connected to a print server and the server operating system directly spools the print job to the print server, by default. Printers are connected to the client device using a UNC path or a cable. The server operating system spools the print job to the client device.
Network (Client and Server)
Redirected client
Default Printing Behavior
By default, XenApp printing behavior is as follows: All printers configured on the client device are created automatically at the beginning of each session. The client devices spool all print jobs queued to locally-attached printers, reducing resource consumption on the XenApp servers. XenApp routes all print jobs queued to network printers directly from the server hosting the published application. If XenApp cannot route the jobs over the network, it will route them through the client device. XenApp retains all changes made by users to printer properties and settings on the client device. If the client device does not support this operation, XenApp stores the changes in the user profile for that user. XenApp uses the native Windows version of the printer driver if it is available on the server hosting the application. If the printer driver is not available, the XenApp server attempts to install the driver from the Windows operating system. If the driver is not available in Windows, XenApp uses one of the Citrix Universal Printer Drivers. If an administrator is unsure of the default printing behavior, a printing policy can be created with all printing policy rules enabled. The options that are selected by default in the enabled rules are the default settings.
Printer Provisioning
XenApp print environments are highly dynamic because they are typically built during session initialization or application launch. The process by which XenApp makes printers available in a session is known as printer provisioning. An administrator can control printer provisioning and configure which printers users see in their sessions. Administrators can specify the method by which printers are provisioned to users: User self-provisioning If an administrator does not want to specify (and administer) user printers, the administrator can prevent printer auto-creation and let users self-provision the printers that are visible from their client devices. Auto-creation If an administrator wants to ensure that printers are available when users start their sessions, the administrator should provision printers through auto-creation. Any printer defined on the client device can be auto-created at the beginning of a session. In order for client printers to be auto-created in user sessions, the Client printer redirection policy rule must be enabled in the Citrix policies node of the Group Policy Management Console or the Policies node of the Delivery Services Console. This is the default setting.
Network printer provisioning Administrators can automatically provision network printers to users within XenApp sessions by adding the network printers and configuring the Session printers policy.
Retained Printers
After a user adds a printer through user self-provisioning, the printer is known as a retained printer. Retained printers are created again (or remembered) at the start of the next session and route print jobs along the client printing pathway. Retained printers appear in the session on the client device until the client printer within the session is deleted manually, the remembered printer connection is removed from the client's properties store or the client-side printer is inaccessible. A retained printer will show the notation "Auto Retained" in the Comment field of the printer properties. An administrator can prohibit retained printers from auto-creating at the beginning of a session using the Retained and restored client printers policy rule in the Citrix Policies node of the Group Policy Management Console or the Policies node of the Delivery Services Console.
Printer Auto-Creation
Auto-creation refers to the process that XenApp uses to automatically create printers at the beginning of each session, depending on which printers are configured on the client device and network and the policies that apply to the session. By default, XenApp makes printers available in sessions by creating all printers configured on the client device automatically, including locally attached and network printers. After the user ends the session, the printers for that session are deleted. The next time a session starts, XenApp evaluates the printer creation policies and enumerates the appropriate printers on the client device. An administrator can change the default auto-creation settings to limit the number or type of printers that are auto-created. XenApp can auto-create: 1. Locally attached printers, including locally-defined network printers 2. Network printers 3. Citrix Universal Printer
Printer auto-creation may be the easiest for the administrator to configure, but auto-creating all printers may require extensive processing on the XenApp servers. In addition, maintenance may be required when new printers are added or drivers for the printers are needed on the XenApp servers.
Client Printer Auto-creation
Printer auto-creation creates a list of printers for use after logging in. When the user logs in, the printer drivers will be installed and all printers returned in this list will be available for use.
XenApp can auto-create client printers in two different ways: 1. By creating a one-to-one match with printers on the client device 2. By creating one generic printer, the Citrix Universal Printer, that represents all (or any) printers on the client device
Assigning Printer Creation Settings to Published Applications
When publishing an application or configuring published application properties, printer creation for that published application can be specified as synchronous or asynchronous. The information in the following table describes the printer creation settings. Synchronous: Printers are created before the users have access to interact with and use their sessions. The users must wait for all printers to be created in the background before they can perform any activities. Synchronous printer creation should be used: When applications require all printers to be created first When applications require a stable printing environment An administrator can enable synchronous printer creation by deselecting the Start this application without waiting for printers to be created option in the application properties.
Asynchronous Printers are created in the background while the users have control of and are using their sessions. This process minimizes the amount of time it takes before users can work in their applications and does not impact the users because some application activity usually occurs before printing. Asynchronous printer creation is the default setting and is typically used for published applications. An administrator can enable asynchronous printer creation by selecting the Start this application without waiting for printers to be created option in the application properties. Synchronous or asynchronous printer creation can be specified when publishing an application or afterwards by editing the Client options in the properties of the published application.
Printer Drivers
Printer drivers enable the operating system and applications to create device-ready print data streams for specific print devices. Printer drivers vary among manufacturers and models. Not all drivers work as intended in a multi-user (Remote Desktop Services) environment. Using an incorrect printer driver can cause garbled print jobs or print job failure. Administrators are advised to test printer drivers in a test XenApp environment prior to using them in a production environment. The data store keeps track of all printer drivers in the environment. As drivers are added, entries are added in the data store. Because printer drivers can cause instability in a server farm, it is a best practice to only install the necessary printer drivers.
Printer Driver Types
XenApp supports the following types of printer drivers: Native printer drivers Drivers that are included with the Windows operating system These drivers have been tested and approved by Microsoft to work with the respective operating system and Remote Desktop Services. OEM printer drivers Drivers that have been created by printer manufacturers Many, though not all, OEM drivers have passed Microsoft logo certifications but may not have been fully tested in a Remote Desktop Services environment.
Citrix Universal Printer Drivers
Drivers that are automatically installed on all XenApp servers and support client printers without specific native or OEM printer drivers installed on the server An administrator can use a printing policy to autocreate printers to use a universal printer driver. A Citrix Universal Printer Driver can: 1. Enable users to print to most printers. 2. Ensure that client printers auto-create regardless of printer driver availability on the server. 3. Reduce the size of some print jobs and reduce delays when spooling print jobs over slow connections. 4. Prevent problems with driver maintenance or printing-related issues in a diverse environment. 5. Limit the installation and replication of a large set of printer drivers or potentially problematic printer drivers in the server farm. 6. Minimize help desk calls. An administrator should keep the following considerations in mind when configuring XenApp to use universal printer drivers: 1. Universal printer drivers work with locally-attached client printers, Citrix Universal Printers and network printers that use the client printing pathway. 2. Some universal printer driver features may have reduced functionality for some plug-ins. 3. Some features of multi-function printers may not be available with 4. universal printer drivers.
Automatic Driver Installation
When XenApp auto-creates printers, it determines if the corresponding printer drivers are missing. By default, XenApp installs the missing Windows native printer drivers. If an incompatible printer driver is installed, it can cause issues on the XenApp server. An administrator can control which printer drivers are installed on the XenApp servers using the following policy rules in the Citrix Policies node of the Group Policy Management Console or the Policies node of the Delivery Services Console: