1.3 Overview

In a typical terminal server scenario, the physical printer device is located on the client computer, while applications are running on the terminal server. Clients often need to print documents using the printer that is physically connected to the client computer. The Remote Desktop Protocol: XPS Print Virtual Channel Extension allows these jobs to be redirected to the client printer. The platform-independent XML Paper Specification (XPS) document format specifies the content-specific and document-specific properties of the print jobs.

The Remote Desktop Protocol: XPS Print Virtual Channel Extension specifies communication between a virtual printer driver installed on a terminal server and a printer driver installed on the client computer. The primary purpose of this protocol is to acquire printing capabilities and to display a printer-specific user interface on the client computer.

This protocol extension consists of the following interfaces.

Printer Ticket Interface: See section 1.3.2.2. This interface is a group of messages that specifies how a particular document is rendered in XPS format. It also supplies a means for translating between older types of document properties.

Printer Driver Interface: See section 1.3.2.3. This interface is a group of messages that specifies printer capabilities that are negotiated between the client and the server. It also assists in displaying a printer-specific user interface on the client computer.

To maintain backward compatibility, as well as to extend the lifetime of the two interfaces, the Remote Desktop Protocol: XPS Print Virtual Channel Extension includes helper messages for interface manipulation (as specified in section 1.3.2.1), which are applicable to both interfaces.

Client and server stack illustrating the relationship of the protocol to the printing subsystem, virtual print driver, and client printer driver

Figure 1: Client and server stack illustrating the relationship of the protocol to the printing subsystem, virtual print driver, and client printer driver