Cannot print to a redirected serial printer from Wyse V10LE on XenApp 6.5 HR01

I have an application that sends print jobs directly to COM1, printer objects will not work.  This is my setup:

WS 2008 R2 SP1 Enterprise
XenApp 6.5 with HR01
Wyse V10LE WTOS with Firmware 7.0.0_34 and ROM 1.19
Epson TM-U375 Serial Printer attached to COM1 on Wyse

From the Wyse box printer properties, I can print a test page.
In an ICA session, at login I run:  net use com1: \\client\com1:
In a command prompt I can successfully print using "echo test123 > com1"
When trying to print from the application it just hangs.  I can reset which COM port is used, setting it to none.  When the application is next launched, it asks if the printer I want is on COM1, so it seems it can see it – just not print to it.
If I create an object printer using COM1 for the port, I cannot print to the printer.  No error, nothing is printed, and nothing stuck in the queue.  Is this expected behavior?

We are moving from XenApp 4.5 on 2003 R2 (32-bit).  On the same Wyse box with the same printer, printing works from:  Wyse, command line, object printer, application.

These are the COM port settings I copied from the working 2003 XenApp 4.5 Server:  mode com1: baud=9600 parity=n data=8 to=off xon=on odsr=off octs=on rts=on octs=off dtr=on

Group Policies (have been removed and set locally, no change):
Computer\Policies\Administrative Templates\Windows Components\Terminal Services\Terminal Server\Device and Resource Redirection:  Do not allow COM port redirection – Disabled
Computer\Policies\Administrative Templates\Windows Components\Terminal Services\Terminal Server\Printer Redirection:  Do not allow client printer redirection – Disabled

Citrix Policies:
Auto connect client COM ports – Disabled
Auto-create client printers – Auto-create all client printers
Client COM port redirection - Allowed
Client printer redirection – Prohibited (when Allowed, I get this error:  An error occurred while retrieving client printer properties. Default printer properties will be used instead. Client name: (WT00806496833f) Printer: (Epson1 (from WT00806496833f) in session 2) Printer driver: (Generic / Text Only))
Universal driver preference – XPS;EMF;PCL5c;PCL4;PS
Universal print driver usage – Use universal printing only if requested driver is unavailable
Universal Printer Server enable – Enabled with no fallback to Windows’ native remote printing
Universal Print Server print data stream (CGP) port – 7229
Universal Print Server web service (HTTP/SOAP) port – 8080

When “Client printer redirection” is Allowed, a printer is created - Epson1 (from WT00806496833f) in session 2 – using port CLIENT:2:EPSON1 (Client Printer Port)
I can print to this printer successfully in notepad.  I cannot choose this printer in the application.

Where it get's confusing is when the same Citrix server with the same policies and settings, and the same printer is attached to an XP workstation, using ICA the application can successfully print (I still cannot print from an object printer).

I have the application vendor looking on their end, no luck so far.  I have Wyse checking things out on their end, nothing.  I have been unable to determine why the application can print from one device and not another, is the Wyse box the problem (maybe the ICA client on WTOS), is it the application, or policies, or ?  Please help.
Who is Participating?
ASGTechSupportConnect With a Mentor Author Commented:
This is the only method I found to make it work:

At login:

Before:  net use com1: \\client\com1:
After:  net use lpt1: \\client\com1:

In the application INI:

Before:  COM=COM1
After:  COM=LPT1

And now I can print.  I don't know why it doesn't work on COM1, it should - it locks the port when trying to print, but it just never prints.  The application vendor support also said I could only have COM1-4 in the INI, so I'm a little upset with them (I might have tried this much sooner if they actually did something, and I knew about it).

It doesn't help not having a working Port Monitor on 2008 R2, or another application that can print directly to a COM/LPT port.  I still have Wyse looking into this on their end.  Citrix support directed me to Wyse.

@FBTC_Helpdesk - please let me know if this works for you as well.

Moderators, please close this case after a response from FBTC_Helpdesk.
What's this setting?

Auto connect client COM ports – Disabled

I would assume that if you are connected directly to COM1 on the client, that you would want the COM port connected in your session - wouldn't you?

Oh, and you wouldn't need the net use at all from the WYSE session since the printer is directly connected.
ASGTechSupportAuthor Commented:
The policy "Auto connect client COM ports" replaces the command "net use com1: \\client\com1".  When enabled this is what it does:

Maps com1 to client\com1
Maps com2 to client\com2
Maps com3 to client\com3

I switched to the policy instead of using the command in the login script, and printing still does not work in the application from the Wyse box, but still works from the XP workstation.
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Is there a setting in the application to select a COM port to use?

Also, these two settings look suspicious.

Client name: (WT00806496833f) Printer: (Epson1 (from WT00806496833f) in session 2)
Universal Printer Server enable – Enabled with no fallback to Windows’ native remote printing

Logically, those policies would force the client to use that printer and with UPS enabled with no fallback the local terminal could not use the local printer.

I haven't actually worked with this product before, but I am taking a stab at it based on what you have provided.  Hopefully, I'm being of help!
I think also the policy for the printer name should match the printer exactly.

Epson TM-U375
I found this:

Not sure if it will help.
ASGTechSupportAuthor Commented:
I changed the policy "Universal Printer Server enable" to be "Enabled WITH fallback to Windows’ native remote printing" - no change.

When the policy “Client printer redirection" is set to Allowed, this printer is created in "Devices and Printers" with a name similar to:  Client name: (WT00806496833f) Printer: (Epson1 (from WT00806496833f) in session 2)

I can change the name by using the policy "Client printer names": standard printer names vs legacy printer names

I can select which COM port to use in the application (in an INI file), but I cannot choose an object printer (like the printer above).

The driver being used is "Generic / Text Only", set on the Wyse box.  

I am not certain the problem is with my policies, because they work when the client is an XP workstation. I'm sure Wyse presents printers differently to an ICA session, but I've been unable to find a combination of policies to make it work with my application (if there is one).
Where is it picking up Epson1 from?

Based on that link I posted, it appears the Wyse boxes need this name to match the driver name (in it's INI file).

You should also install the print drivers for this printer on the server.
ASGTechSupportAuthor Commented:
The printer does not use the vendor provided printer specific drivers.  Windows has the "Generic / Text Only" driver installed natively.  I cannot install the vendor drivers on Wyse WTOS, "Generic /Text Only" must be used.

In the link provided they are relying on network printers, my printer is directly attached to the Wyse box on COM1.

The printer name on the Wyse box is defined as Epson1 (through the INI).  The driver names must match what Windows has, and not the printer name.  I don't define the printer name anywhere in Citrix or Windows Server, that is handled by policy.

What I have working now on 2003, no object printer is created - there is no identifiable printer name.

Keep in mind all this works when the client is an XP workstation.
Try installing an RS-232 to USB converter cable on the printer.  $20 may fix your issue in short order.
ASGTechSupportAuthor Commented:
Bought two this morning.  Wyse recognizes it as Wyse VUSB, but it does not get redirected in the Citrix session.  If it did successfully redirect, I can only print to a COM port - the application doesn't support object printers.
ASGTechSupportAuthor Commented:
Does anyone have this working in their environment?
I found your thread hoping for an answer :)

I have the exact same environment and the same problem.
Server 2008 R2
Wyse V10
XenApp 6.5
Epson TM-U375

Like you I can print to it using echo but cannot print with program even though it detects it.
Yes that works for me. Thanks.

Now to find a way to edit all the users ini file to lpt1. The printer auto detection in the app does not detect lpt ports only com.
ASGTechSupportAuthor Commented:
I'm not sure how I will move my users, so I have a script to update INI's user-by-user OR all at once.

Or you can use this program:

I will share the scripts if you'd like, let me know.
Looks good. Thanks for the help.

I will probably stay on the vendor for a little while to have them fix it before I do this for all users just so I can have a "supported" configuration.

I tried an HP winCE thin client and it worked both when using com1 and lpt1 so it does seem related to the wyse as well.
ASGTechSupportAuthor Commented:
Other members were unable to provide a working solution.  I even helped another member solve a similar problem.
All Courses

From novice to tech pro — start learning today.