RDP virtual static channels don't work and an operation stalls in Windows Server 2012

Symptoms

On a Windows Server 2012-based computer that has the Remote Desktop Services (RDS) role installed, the following issues occur.

Issue 1

Assume that you have the Remote Desktop Services (RDS) role installed on a computer that is running Windows Server 2012. You run an application that uses Windows Terminal Server virtual channel APIs (such as the WtsVirtualChannelOpen and WtsVirtualChannelClose APIs) to create and use virtual channels in a Remote Desktop Protocol (RDP) session. In this situation, RDP static virtual channels do not work. Additionally, Virtual channel communication fails in the RDP session if you do not reestablish the connection.

Notes
  • This issue does not affect other running RDP sessions.
  • This issue can appear in different ways. For example, when you schedule several print jobs in a Remote Desktop Protocol session, the print jobs are deleted.

Issue 2

Consider the following scenario:

  • You have the Remote Desktop Services (RDS) role installed on a Windows Server 2012-based computer.
  • You run an application that uses Windows Terminal Server virtual channel APIs (such as the WtsVirtualChannelOpen and WtsVirtualChannelClose APIs) to create and use virtual channels in a Remote Desktop Protocol (RDP) session.
  • The application tries to open a static virtual channel by using a channel name that does not exist.
In this scenario, the operation that opens the static virtual channel stalls for 10 seconds when the system tries to open the nonexistent virtual channel again.

Cause

Cause of Issue 1

This issue occurs because of a race condition that occurs when the system cannot open a static virtual channel.

Cause of Issue 2

This issue occurs because the channel is not closed when the channel receives an error when the virtual channel is created.

Resolution

Hotfix information


A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem.

If the hotfix is available for download, there is a "Hotfix Download Available" section at the top of this Knowledge Base article. If this section does not appear, submit a request to Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft website: Note The "Hotfix Download Available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

Prerequisites

To apply this hotfix, you must be running Windows Server 2012.

Registry information

To apply this hotfix, you do not have to make any changes to the registry.

Restart requirement

You must restart the computer after you apply this hotfix.

Hotfix replacement information

This hotfix does not replace a previously released hotfix.
File information

Status

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

More Information

For more information about the static virtual channel, go to the following Microsoft website:
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates
Additional file information
Egenskaper

Artikel-id: 2802311 – senaste granskning 19 mars 2013 – revision: 1

Feedback