This document is intended to serve as guideline and to provide alternate references for the troubleshooting of various printing issues within a Citrix Environment. Consult the Citrix Knowledge Center for information that may not be included in this article or as a link in one of the reference articles.
General Troubleshooting
1. CTX107137 –Troubleshooting Printing Problems In Presentation Server 4.0
2. Starting with MetaFrame XP, Printer Management Functions and Policies are configurable within the Management Console. When these functions and policies are altered from the default, troubleshooting can be difficult. It is important to understand exactly what settings are being used before troubleshooting a printer issue. It is also important to verify the Citrix Connection Configuration and the User Properties for current Printer Settings.
3. Attempt all troubleshooting within a Desktop, Published Desktop, or with another application, such as notepad, and Print Manager running in the same session as the offending application. Log on to the same server as the client reporting the issue. This will help avoid any confusion from Citrix Load Balancing. Citrix Support may ask to perform similar tests within a RDP session. CTX884335 –How to Publish Print Manager on a Windows NT/2000/2003 Terminal Server
4. The printer must be defined and available within the Citrix session. See CTX681954 – Troubleshooting Citrix ICA Printer Autocreation and CTX881017 – Troubleshooting MetaFrame XP Imported Network Print Servers.
The printer could also be created manually or with a logon script via the “Client,” “Microsoft,” and “Novell” Networks.
5. Issues involving the Universal Print Driver (UPD) should be compared against a similar test with a native driver. CTX089874 – Troubleshooting and Explaining the Citrix Universal Print Driver.
6. Issues with DOS applications, refer to CTX032037 – How to Print from Legacy Applications Using the Net Use Command with LPT Ports.
7. Issues with the deletion of printers or specific print jobs, refer to CTX051476 – Autocreated Printers do not Delete After Users Log Off.
8. Issues with Printer Properties, refer to CTX959786 – Explaining User Defined Printer Properties.
9. Issues with Printer Replication, refer to CTX774641 – Printer Driver Replication Fails for Certain Printers and Printer Drivers.
10. Issues viewing others Printers, refer to CTX668903 – Troubleshooting - Users See or Print to Another User's Autocreated Client Printer.
11. As long as the issue is not with the physical output of the print job, the following test can be performed after creating a dummy/ghost printer to mimic the client workstation driver experiencing the issue. This test does not apply to locally defined Network Printers that are created as Network Printers inside an ICA session.
a. Change the radio button in the Management Console to create Network Printers as client printers.
b. Once defined, pause the printer object on both the client machine and within the printer object created inside the ICA session.
c. Open the printers folder within the ICA session, right-click the autocreated printer in question, and choose Properties > Pause Printer.
d. Do the same for the printer object defined within the local client printer’s folder.
e. Generate a print job from an application and Notepad or a Test Page within the ICA session.
f. Do the print jobs hit the autocreated print queue in the ICA session? If so, release pause.
g. Do the jobs then appear in local client print folder? If so, release pause.
h. Do the jobs print correctly? If Notepad or a Test Page work, then understanding how printing works within the application is essential. If Notepad or a Test Page fails, then the driver on the server and/or client may be suspect. Reinstalling the driver and deleting/recreating the printer object on the client and/or server along with Testing with or mapping to another print driver would help clarify the issue.
12. Ensure the latest cpmmon.dll, ctxnotif.dll (Non-TSE 4.0), ctxlogon.exe (TSE 4.0), MFPrintSS.dll, and wfshell.exe files are installed on the server.
13. Investigate Microsoft TechNet for possible known Spooler issues.
14. Investigate with the manufacturer of the Print Driver for known issues.
15. Upgrade/downgrade the Citrix ICA client for troubleshooting purposes.
Additional Information
• CTX075409 – How to Create a DOS Client or Winterm Printer for All Users
• CTX416582 – How to Create a Network Printer for All Users
• CTX114082 – Case Study: Configuring Permanent Client Printers
• CTX748796 – Users Unable to see the Client Network when in Print Manger or Connect to Printer
• CTX816193 – USB Support in XenApp/Presentation Server Products
• CTX104149 – ICA Win32 Client Version 8.00 fixed issues
• CTX112582 – Adobe Acrobat 7.x Fails to Send Print Jobs to the Queue
• CTX111967 – Common Microsoft Windows and Citrix Printing Terms Defined
• CTX114079 – Breakdown of the Print Driver Mapping Process
Refresh Drivers versus Update – After removing or adding a print driver and choosing refresh, the Management Console does not appear to update. Right-click on the Printer Management node and select Update Printer and Driver Information.
Hotfix XE103W2K057
When a new printer or printer driver was installed on a MetaFrame server, a substantial amount of traffic (in the order of 8 to 10 MB per second) occurred between the IMA service and the data store the IMA service was using. This occurred because the IMA service needed to update the Management Console for MetaFrame XP with the information about the new printer or printer driver, which caused the huge amount of network traffic.
To resolve this problem, navigate to the following registry key and change the value of fDisablePrinterWorkerThread to 1:
Caution! This fix requires you to edit the registry. Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\IMAPrinter
Type: REG_DWORD
Value: fDisablePrinterWorkerThread = 1
After you make this change to the registry, restart the IMA service for the change to take effect.
Note: When the registry switch is set to 1, the IMA Service does not automatically update printer or printer driver information to the Management Console. You need to update this information manually. To do this, click Printer Management in the left panel of the Management Console and then double-click Update Printer and Driver.
[From Hotfix XE103W2K006][#62158]
Creating Printers as Client Printers vs. Network Printers
From the Management Console Help (with clarification):
Select this option if you want the client device to process printing requests (via an ICA virtual channel), instead of the server (MetaFrame server to Print Server). When you select this option, communication from servers to client devices is faster if they talk across a WAN. Data sent to the client is compressed, so less bandwidth is consumed as the data travels across the WAN. Additionally, if two network printers have the same name, the printer on the same network as the client is used.
Do not select this option if you want print jobs to be sent directly from servers to network printers. Direct communication results in faster printing if the network printer and server are on the same LAN.
Viewing Printers with respect to this setting:
A “Client Printer” is created on the server as a physical object. HKEY_LOCAL_MACHINE/System/CurrentControlSet/Print/Printers
The access is based on a security descriptor which, by default, includes Administrators.
CTX668903 – Troubleshooting - Users See or Print to Another User's Autocreated Client Printer
When the printer is created as a “Network Printer”, it is created within the user’s profile (HKEY_CURRENT_USER)." The only person that can access the printer is that of the user.
Therefore, when checking from the "Fax and Printers" folder on the server console, Client Network Printers, not created as a “Client Printer” are not displayed. One should always see a direct attached local printers (this means not network printer) as they will always be created as a “Client Printer.”