How to redirect Serial Ports in Windows Server 2012 RDS/VDI

This tip came to me from a question someone posed internally that we had to find an answer for by hunting someone down Smile.

 

This property isn’t exposed in Server Managers’ UI, so you can set it by calling this powershell command:

 

Set-RDVirtualDesktopCollectionConfiguration –CollectionName <farm> –CustomRdpProperty “redirectcomports:i:1”

Now the Remote Desktop Client will redirect its COM1 port to the Server.  Why is this needed?  Think Serially connected devices such as say, Smart Card readers, for instance.

Hope this helps!

The Dude

13 Comments

  1. Yeah let me check.

    You don't use < and > around My EMR Advantage

    If you have spaces use quotes, sorry I should have been clear in my post.

  2. Jeff…

    Hope you get this…I am having some difficulties getting this to work in my Win Srv 2012 RDS environment.

    Can you elaborate what input is required here to make it run…

    I get:

    PS C:Usersasalm> Set-RDVirtualDesktopCollectionConfiguration -CollectionName <My EMR Advantage> -CustomRdpProperty "redirectcomports:i:1"

    At line:1 char:61

    + Set-RDVirtualDesktopCollectionConfiguration -CollectionName <My EMR Advantage> – …

    +                                                             ~

    The '<' operator is reserved for future use.

       + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException

       + FullyQualifiedErrorId : RedirectionNotSupported

    Your help would be great as this smart card reader is giving me lots of headaches!

    Thanks in advance.

  3. This begs a different question from me. With this PS command, COM1 is redirected, but what about a driver-required device on the client being set to COM9 (POS PinPAD, for example), that must be redirected through on that port?

    Will the RemoteFX USB device Redirection fulfill this need?

  4. Anybody who try to run this command on his deployment has to run it on the Connection Broker server.

    If you want to run it on one of your host servers then just add one more parameter to the end; -ConnectionBroker "FQDN"

    If your environment is session based you have to use Set-RDSessionCollectionConfiguration instead of Set-RDVirtualDesktopCollectionConfiguration. Rest of the command is same.

    PS: Don't forget to run powershell as admin!

  5. Hi,

    I'm currently wondering if it is possible to redirect specific com ports on the client machine to specific comports on a terminal server running Server 2012 which have consistant port mappings with each different session from the client to the server

  6. James might want to try a forum post on that for Windows Server 2012. I’m at a loss on how to do that stunt personally. Sounds like good info though.

  7. Does anyone know if this is possible in a RemoteApp setup and which command would i need to run? The Set-RDVirtualDesktopCollectionConfiguration is specifically for a VDI which we don’t use. And i can’t seem the find a RemoteApp version of this command in the ISE list.

  8. Is the purpose of this to allow com ports to pass through to another server? For example, we have an issue where we have thin clients that have a signature pad connected to them (through serial). The thin client connects to an internal RDS farm then from there, connects to another RDS farm. We’d like to be able to pass through the com port from the thin client to the 2nd RDS server. Any thoughts/suggestions would be greatly appreciated!

Leave a Reply