How to resolve printing issues for applications that utilize hard coded printer name lengths.
When the printer name length exceeds a hard coded limit predetermined by the application vendor or developer, subsequent attempts to print from the application and /or to even see the printer object in the application print dialog box might fail.
Note: This article is not meant to be specific to Adobe Reader. Merely, this article uses a real support case involving Adobe Reader as a way to help the customer understand how to resolve their application specific issue(s).
CTX137578 – Unable to Print from Certain Applications When the Printer Name is Long
Certain users could not print using the “Print Function” from a custom application that generated reports using Adobe Acrobat 7.x, 9.x, 10.1.2. If the application's Print Preview option was chosen, the documents printed.
The issue was reproduced in-house using the Adobe Acrobat 7.0.9, 9.x, and 10.1.2.
When the customer used the full Program Neighborhood Client from the same workstation as the same user to the same server (bypassing Web Interface), the application behaved as expected.
Initial workarounds involved the usage of a computer name and the Citrix session's ClientName. This was determined by using the following procedure:
- From Web Interface, right-click the ICA file and click Save target as.
- Open the saved file in Notepad.
- Remove the following line:
- Comment lines out line-by-line and retest the ICA file at each line until you determine what line causes the issue. This customer claimed the ClientName line caused the issue.
(Note: Altering the ClientName line to match with that of the ClientName being used by the full Program neighborhood client resolved the issue.)
In this case, Citrix Technical Support tried some general and advanced Troubleshooting because it was known that the naming convention of the Citrix printer (see above) was affecting the issue. Noticing that the application output was actually printed from Adobe helped us determine the root cause and eventually helped resolve the issue. We focused on the printer name length. It was also noted that forms within the application that used Microsoft Word printed successfully using the Print option. As noted in the Problem Definition section, if a print preview was performed for the .pdf files, printing was successful.
The application's Print button appeared to choose the default printer and spawn Adobe Acrobat (acrord32.exe). Nothing would appear in the server's print queue. We wondered if Adobe Acrobat was trapping. We ensured Dr. Watson (Drwtsn32 –i) was enabled on the server. If the session did not have a printer, Adobe produced a message stating this behavior. Adobe did not appear to trap. The acrord32.exe just seemed to start and then end.
CTX105888 – How to Set the NT Symbolic Debugger as a Default Windows Postmortem Debugger
CTX103209 – [Document Not Found]
We renamed the printer inside the session to Minnie and the application printed the Adobe output using the print option. We took the original printer syntax and removed half of the name. Printing still worked using Adobe forms and the Print option. We continued adding characters.
The original session printer name was as follows (it failed):
Renaming the printer to the following worked:
Client/ XY-ABC-12345678 #///BBG/PR-SATOP2-26.SATOP1.SAT.TX.CEN
Renaming the printer to the following was not successful:
- Publish a desktop to one server for the troubled user. If this cannot be accomplished, isolate the published application to a single server and publish print manger as per CTX884335 – How to Publish the Printers Folder and publish Notepad or Word to this same server so Citrix is using session sharing as per CTX159159 – Session Sharing Explained with Troubleshooting Steps.
- If the published desktop is not available, ensure all three objects (the suspect application, Print Manager, and Notepad) are sharing the same session.
- Open Print Manager inside the published desktop or from a published Print Manager. Pause the print queue of the printer. Note what driver is being used inside the ICA session.
- Print from both Notepad and then the application. You should see two jobs inside the queue. If the troubled application never sends a job to the queue, ensure to take a note of this.
- Pause the printer on the client workstation.
- Go back to the server's Print Manager and release the job(s).
- Do the jobs make it to the client-side spooler?
Note Paused in the title bar and the document in the queue.
- Unpause the client-side spooler.
- What, if anything, prints?
(Such as - Does it print a blank page, prints garbled characters, prints nothing as in a blank page is not even produced?)
- Research the Citrix Knowledge Center for known issues and other troubleshooting documents.
Citrix has seen a variety of applications that contain hard-coded printer name lengths, such as:
- Is this a local or network printer? Sometimes network printers cannot be renamed by regular users.
- What is the printer name inside the session and what is the printer name on the workstation?
- If local or network, do other users' workstations use the same naming convention?
- If the printer is local and physically attached, what happens if the local workstation printer is renamed to just "A" and then a Citrix session is launched?
The following is the procedure for Advanced Troubleshooting:
- Create a Presentation Server Console policy to create legacy printer names. Doing so will still use the Web Interface-style ClientName, but the overall length inside the session should be shorter.
- Using access to the servers’ printer folders, rename the printer object on the server side (while in the session).
- Rename the local workstation printer to a shorter length.
- Use the Print Routing Citrix policy from the server to the print server and not through the client
- Auto connect the client network printer as a regular network printer.
- Assign Citrix session printers.
- Rename the printers on the print server.
You might be required to use the userdump.exe tool to see the application's process ID (PID) when a report is being generated or a print job is created, spooled, and so on. Does the CPU spike? See CTX106970 – How to Enable User Mode Stack Trace Database for IMA Service to Detect Memory Leaks.
Is there a possible need for CDF tracing? See CTX108338 – Print Modules to Select When Obtaining a CDF Trace for Printing Problems.
Caution! 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.
It might be necessary to delete and re-create the printer inside the ICA session. To do so, complete the following procedure:
- Verify the printer is removed from HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers
- Open the Registry Editor and investigate and registry entries under the user HKEY_CURRENT_USER\Printers and all its subkeys for any references to the suspect printer being used and manually delete them.
- Manually re-create the client printer inside the session and retest the printing from the application.
As a last resort, you can use the following procedure:
- Delete the printer inside the session and delete the HKEY_CURRENT_USER registry keys inside the session.
- Log off the session.
- Delete the printer from the workstation.
- Delete the HKEY_CURRENT_USER printer data from the client workstation.
- Re-add the printer and then log back on to the ICA session and retest. See CTX959786 – [Document Not Found].
Adobe Acrobat 8.x does not have this issue.
CTX112582 – Adobe Acrobat Fails to Send Print Jobs to the Queue
CTX105984 – [Document Not Found]
CTX105158 – Troubleshooting Citrix ICA Printing - Quick Reference Guide
CTX107112 – [Document Not Found]
CTX103674 – [Document Not Found]
CTX105326 – Disabling Right-click (Context Menu) on Web Interface
CTX111820 – How to Obtain an ICA File through Citrix Web Interface
CTX107069 – [Document Not Found]
This Web site might contain links to Web sites controlled by parties other than Citrix. Citrix is not responsible for and does not endorse or accept any responsibility for the contents or use of these third party Web sites. Citrix is providing these links to you only as a convenience, and the inclusion of any link does not imply endorsement by Citrix of the linked Web site. It is your responsibility to take precautions to ensure that whatever you select for your use is free of viruses or other items of a destructive nature.
PDF Printer for Windows 7
To an application, the PDF Printer looks like a printer and allows the application to write a document as a PDF Document in the same way it would print the document to the printer. When a user prints their document to PDF Printer, rather than sending the file to a laser jet or inkjet printer, the software creates a PDF Document.
PDF Printer Driver User Interface:
Easily create Adobe PDF documents
Easily create Adobe PDF documents from Microsoft Word, Excel, PowerPoint, Access, Outlook, Project, Visio, Publisher, Internet Explorer, AutoCAD, Lotus Notes, Quark Express, Xpress or any application that prints.
Convert e-mail to Adobe PDF files
Convert e-mail in Microsoft Outlook, Outlook Express, or IBM Lotus Notes to Adobe PDF documents by printing from within e-mail message.
Archive web pages as Adobe PDF files
Convert web pages to Adobe PDF documents to easily archive or share.
Optimize Adobe PDF output
Select from multiple quality settings for text and graphics to optimize PDF output for your intended purpose, such as CMYK compliant output, ICC profiled output.
Quickly regenerate a PDF file
Regenerate a PDF document by printing that document for your intended purpose.
Embed fonts of your choice
Automatic and manual settings for font embedding and subsetting. To embed all fonts can be done with a click.
Apply passwords and assign permissions
Control access to and use of Adobe PDF documents by applying password and assigning permissions to help restrict who can print, save, copy, or modify a document, and maintain document integrity.
Remove sensitive and hidden data
Permanently remove sensitive metadata, hidden layers, and other concealed information.
All products support Microsoft Windows 7 32-bit (x86) and 64-bit (x64), and are backward compatible with Microsoft Windows Vista, Windows XP, Windows 2000, Windows Server 2003, Windows 2000 Server, and Windows Server 2008.