Terminal Services Dynamic Virtual Channels
Are you a programmer looking in to extending Terminal Services? One great way to extend Terminal Services is to use Dynamic Virtual Channels. What are Virtual Channels you may ask? According to the Terminal Services Team, they are “…bi-directional connection streams provided through the RDP protocol. Virtual channels allow third parties to establish a data pipe between the TS client and server to extend the functionality of the Remote Desktop Protocol (RDP). Examples of extra functionality provided through virtual channels are cross-TS-connection clipboard, drive, printer and smart card redirection. There are two types of virtual channels: static and dynamic. Due to the limitations of static virtual channels referenced above, dynamic virtual channels are the preferred way to extend TS functionality.”
If this sounds interesting to you, check out the Terminal Services Team blog entry on how to write you own virtual channels. This post on the Terminal Services Team blog steps you through creating a sample dynamic virtual channel that supports file transport without relying on RDP drive remapping. The example is called TS-Teleport and follows the logic pictured below:
The server component is a shell extension that adds an “RDP Client Desktop” entry to the “Send To” context menu. Upon receiving the list of highlighted files which the user elected to “Send to the RDP Client Desktop”, the shell extension opens the DVC and streams the files through. Upon receiving the file names and data, the client component creates those files and directories on the desktop.
The server sends a series of state dependent requests to the client by writing on the DVC and for each request it reads the status through a DVC read. Requests are start and end pairs for files and directories and data packets for file data.
Continue at source…
Technorati : Dynaimc Virtual Channel, File Transfer, Programming, RDP, Terminal Services, Virtual Channels
Del.icio.us : Dynaimc Virtual Channel, File Transfer, Programming, RDP, Terminal Services, Virtual Channels
Ice Rocket : Dynaimc Virtual Channel, File Transfer, Programming, RDP, Terminal Services, Virtual Channels

