Citrix Com Port Mapping (Part II) Just the Old Way

In the last post I just talked about the differences between old and new Com Port Mapping.  This time I’m just going to focus on the old stuff.

First of all, the old Com Port Mapping only supports COM1 and COM2.  This is accomplished by giving each their own virtual channel.  These virtual channels are so old that they are given reserved channels 5 and 6.  This would have been inherited from the original Multiuser based product first designed in 1989.  LPT1 and LPT2 are treated very similar and given channels 1 and 2.

On these channels, the protocol is fairly simple.  The focus is on presenting data from the server to the client for the sake of printing (either COM or LPT).

The model only allows for writing these ports.  It also does not allow setting anything special with the COM port.  The list of possible operations is basically OPEN, WRITE, SET INFORMATION, GET INFORMATION, and CLOSE.  SET INFORMATION and GET INFORMATION are very limited and only support the concepts of printer status feedback.

It is good advice to consider the Old Way as being write-only with limited control support.  It is good for simple printing but absolutely no good at anything that requires bi-directional data.

In PortICA we still support this interface in the hopes of keeping things compatible with the older model.  Obviously it makes more sense to use the new model when dealing with more advanced operations than simple printing.

The PICAPAR driver in PortICA will handle these requests.  This driver is responsible for all the old ways of working with COM1, COM2, LPT1, and LPT2.  It is modelled after how CDM.SYS works in Presentation Server.

One Response to Citrix Com Port Mapping (Part II) Just the Old Way

  1. Pingback: Confluence: Barry Flanagan

Leave a Reply

Fill in your details below or click an icon to log in:

Gravatar
WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s