14.2.13 Remote Desktop Protocol: Clipboard Virtual Channel Extension

The Remote Desktop Protocol: Clipboard Virtual Channel extension (as specified in [MS-RDPECLIP]) allows users to seamlessly transfer data via the system clipboard between applications that are running on different computers. To accomplish this objective, the Remote Desktop Protocol: Clipboard Virtual Channel extension specifies how to keep two distinct system clipboards in sync, so that at any given time, the data available to an application on one computer's local clipboard is identical to the data available to another application on a remote computer's local clipboard.

All data copied to a system clipboard must conform to a format specification known as a Clipboard Format. Each Clipboard Format is identified by a unique numeric format ID. This format ID is used to tag the data on the clipboard so that any application that is enumerating the contents of the clipboard can determine the format of the data without having to extract and analyze it. The type of data that can be transferred by using Remote Desktop Protocol: Clipboard Virtual Channel extension is divided into four categories:

  • Generic data

  • Palette data

  • Metafile data

  • File stream data

Generic data is not manipulated or re-encoded by Remote Desktop Protocol: Clipboard Virtual Channel extension. Generic data is treated as opaque and passed from one virtual channel endpoint to another without any modification.

Palette data contains a predefined set of mappings from a given index to a red, green, and blue (RGB) triplet. Each triplet represents a color in the additive RGB color space. Palette data to be transferred between virtual channel endpoints is specially encoded and decoded for transport on the wire by Remote Desktop Protocol: Clipboard Virtual Channel extension.

A Windows metafile is a collection of structures that can store an image in an application-independent format. The stored image can be recreated by processing the metafile structures. Also called a vector image, a metafile contains a sequence of drawing commands and settings. The commands and settings recorded in a metafile object can be rendered on a display, output by a printer or plotter, stored in memory, or saved to a file or stream. Metafile data to be transferred between virtual channel endpoints is specially encoded and decoded for transport on the wire by the Remote Desktop Protocol: Clipboard Virtual Channel extension.

A file stream encapsulates the contents of a file that resides on some form of long-term storage. The Remote Desktop Protocol: Clipboard Virtual Channel extension provides the ability to transfer selected chunks of a file between virtual channel endpoints, as opposed to having to transfer the entire file image. A file stream can also be part of a larger collection of streams, where each stream can be referenced independently (as, for example, when transferring a group of files).

 
Show: