[Part I in a series. Jump to Part I, Part II, Part III]
Historically, printing redirection has been difficult for Terminal Services(TS) customers. To successfully redirect a given user's client printer to the terminal server, the proper drivers needed to be installed on both the TS client machine and TS server machine. Customers have discovered that the requirement of having the TS server host a matching printer driver can be problematic for a number of reasons (e.g. inability to find matching drivers, or the drivers the printer vendor supplied just don't work with TS). Simply put, we wanted to solve these issues and reduce administrator headaches. The solution is TS Easy Print: a "driver-less" solution for printer redirection over a TS session.
TS Easy Print is a proxy for every print action that simply redirects all printing-related work to the user's local machine without the need to install any print drivers on the TS server. This system provides several benefits, such as being able to redirect any printer from the user's client machine without having to reconfigure the server while still allowing the user to configure the print job as though he were printing on his client machine.
On Longhorn Server, the user's local client printers installed in a TS session will be installed with the TS Easy Print system.
On the TS server, Longhorn Server needs to be installed. That is all! No additional drivers need to be installed; no additional configuration needs to take place. On the TS client, the user must be running TS client 6.1 and have .NET Framework 3.0 SP1 installed (both will be released in the same timeframe as Longhorn Server). Both TS client 6.1 and .NET Framework 3.0 SP1 are intended to be available for XP, Windows Server 2003 and Vista machines. As a result, XP, Windows Server 2003, and Vista machines will be able to connect to Longhorn servers and use TS Easy Print just as Vista machines will.
As mentioned above, the general idea behind the solution is to make a driver on the server that redirects all printing related work to the local machine. The implementation of this solution comes in two pieces.
The first piece is presenting the user with printing preferences through UI so that they may configure the print job on any printer they have. Instead of creating some server side UI that will show the bare minimum of preferences users need (such as number of copies, landscape v. portrait, etc...) and apply this UI to all printers, the TS Easy Print driver acts as a proxy and redirects all calls for UI to the actual driver on the client side. When the user edits preferences for a print job on a redirected printer, the TS client will launch this UI from the local machine on top of the remote session. As a result, the user sees the same detailed printer-specific UI and all printer options are available to him. He would see exactly the same options as if he were printing something locally. The user's selected preferences are then redirected to the server for use when printing. Below are screenshots that show an example of the above behavior.
This picture shows that the TS Easy Print driver is installed.
The mstsc window is made smaller and the theme of the printer preferences window is different. This shows that the printing preferences window is running on the TS client machine!
The second piece is the ability to send a print job from the server to the client and reliably print the job. To do so, we take advantage of Microsoft's new document format, XPS (http://microsoft.com/xps). When redirecting print jobs, on the server, we create an XPS file using the preferences the user has selected, send the XPS file to the client, and, with the help of other printing components, print the job on the appropriate printer. XPS has the advantage of being a document format that encapsulates printing preferences and document data. That, plus the fact that XPS comes with Windows, makes using XPS to transport printing data a very logical mechanism. The dependencies on the XPS format are what necessitate the installation of .NET Framework 3.0 SP1 on the TS client machine.
As of now (04/27/07), the only platform that can be used as the client computer is Longhorn Server Beta 3. As mentioned in the “What is needed to use TS Easy Print”, more platforms will be made available. On the Longhorn Server Beta 3 client computer, the one additional step needed to ensure that printers are redirected over TS Easy Print is to install .NET Framework 3.0 (SP1). There are two ways to do this:
1. Through UI: Start -> Administrative Tools -> Server Manager -> Add feature -> .Net framework 3.02. Through command line: pkgmgr.exe /iu:NetFx3
With this, all is set. We can redirect client printers as we used to normally by enabling the Printers checkbox in mstsc -> Local Resources -> Local devices and resources (this is enabled by default in mstsc). Redirected printers on the remote session will now be installed using TS Easy Print and do not require any configuration on the server by TS administrators.
Coming up: Part 2 of Easy Print
Why doesnt MS just buy up the thinprint rdp engine technology - it works like a dream? (No I have no connection to them other than as a customer)
Ive got hundreds of people connecting to Terminal Servers from their homes, and it has never failed regardless of whatever nasty little printer any of those users have!
Does the TS easy Print works for Citrix ica session as well?
TS and Citrix are both very bad for working with Crystal Report, and the only way is to install all native drivers in the Citrix/TS servers.
it looks this is a final solution to Crystal report printing nightmare for TS, and hopefully it apply to Citrix as well.
In Part 1 , we introduced the main benefits of Terminal Services (TS) Easy Print: a “driver-less” solution
How does it affect users that uses Thin client that have WinXP embedded?
XP Embedded would need to be updated to SP3 when it's available for the device.
You'd still be able to connect to a 2008 TS, just not via TSWeb, if you don't update the RDP Client.
Is the specification for rdp 6.1 available? Do you know of any moves to develop the open source rdp clients to be 6.1 compatible? I know you want to sell either CE or XPE but it is much cheaper to use open source clients.
ICA has always been reckoned to to perform better than rdp. Does 6.1 have better performance than 6.0?
I wonder how the easy printer driver showed in the properties of printer list? I didn't see the easy printer driver showed, why?
I have installed a WS2008 (Longhorn) server,The CLIENT – from which I remote out of – be XPe with .NET 3.0 SP1 and RDP6.1 installed.Can this see the easy printer driver just as the above picture 1
would Easy Print support Mac users connecting via RDP client for Mac?
looking forward to Win2008!
Does anyone know why my 2003 server's Printer Redirection works with Web Connection but not with Remote Desktop Connection? I have installed right driver and it seems working fine with Remote Desktop Web Connection; however, I just can't make it work with normal Fat client version of Remote Desktop Connection. Can someone help me?
Printing hasn't always been the easiest thing to configure and manage in Terminal Services. As Greg Shields
This is not a technical support forum. Please post those type of queries to the following newsgroup.
Printing hasn't always been the easiest thing to configure and manage in Terminal Services. As Greg
Во время моего доклада “Безопасный удаленный доступ к приложениям” было задано несколько вопросов по...