After discussing the inbox Plug and Play device redirection capabilities in Windows Vista and Windows Server codename “Longhorn”, in this conclusive part of the series, we talk about how third-party Plug and Play device drivers can be authored in such a way that they can function over this new Plug and Play Device Redirection Framework and can be used by applications running both local and remote.
Optimizing third-party device drivers for use over the Framework
The Terminal Server Plug and Play Device Redirection Framework provides a generic infrastructure that lets potentially any type of Plug and Play device to be redirected over RDP provided certain set of guidelines are followed to author the device drivers. All rules required to write drivers based on new User-Mode Driver Framework (http://www.microsoft.com/whdc/driver/wdf/UMDF.mspx) apply – in addition there are a few guidelines specific to having the device accessible remotely over RDP. These guidelines are summarized in the DEVFUND-0010 section in the Windows Logo Program Device Requirements for Windows Vista and Windows Server codename “Longhorn”: http://www.microsoft.com/whdc/winlogo/hwrequirements.mspx. If you are writing drivers for Plug and Play devices for Windows Vista and Windows Server codename “Longhorn”, you are strongly encouraged to follow these guidelines so that the device is usable by applications that are local or remote. The message is that Plug and Play devices for Windows need to work seamlessly irrespective of whether the application talking to these devices is residing on a local or a remote computer.
After authoring your device driver in accordance with these guidelines, you need to modify your device driver INF so that the device is made available for redirection over RDP. This paper summarizes the changes required to the device driver INF: http://www.microsoft.com/whdc/driver/install/ts_redirect.mspx.
Note that for certain device types, the Windows Logo for Devices Program has already started including tests to ensure compliance with the Terminal Server Plug and Play Device Redirection Framework – for example, for the Windows Vista Logo, if your device is of the Windows Portable Device category, passing the Terminal Server redirection tests is mandatory in order to obtain the Logo. As more inbox support for devices is added over the Framework, in the future, more categories of devices will start including these tests as requirements for third-party devices belonging to that category to obtain the Logo.
Microsoft announced the Terminal Server Plug and Play Device Redirection Framework at the Windows Hardware Engineering Conference 2006 – here is the presentation: http://download.microsoft.com/download/5/b/9/5b97017b-e28a-4bae-ba48-174cf47d23cd/SER014_WH06.ppt.
Excellent explanations in three parts and thank for the link to ppt.
My view of PnP Dev redirection in TS has some difference from the present framework. Here is the list of limitations of present frame work:
1) Complete system is Vista & LH dependent where as it could be more transparent at device & standard protocol level.
2) We still need device driver installation in Vista – TSC to talk with TS-LH.
3) I hope, it can be extended to XP [TSC] in future by Microsoft only.
4) Not sure, whether microphone over TS will work or not yet.
Alternatively, we could have a framework where server side is much more intelligently configured Windows2003 [or Longhorn] and any dumb client with basic system can work together. If we consider to use terminal services over 10mbps network using a custom made embedded thin-client, proposed framework will not help much [correct me, if I am wrong]. In case of USB PnP, we could have done more efficiently.
1) USB over IP can enable devices in terminal services environment without specific local device drivers.
2) Basic minimal device driver [USB UHCI] shall be required in client side to take USb packets, convert them to IP packets, handshake with server, authenticate & create user specific device node, ask for devices driver in server side, get installed and up for specific connection/user.
3) Might get complex in ADS and GP level from security aspect, but can be resolved.
4) Up to 128 concurrent clients with one usb devices each can connect to server, having their client side USb devices [storage, printer, camera, modern medium data storing gadgets etc.] mounted in server side.
5) Remote microphone issue does not get resolved here, need different approach.
This might sounds crazy in enterprise environment now, but this way we can solve too much dependencies in client side. True PnP can be achieved is we take driver interface extended over IP network and get the respective device drivers in server’s space.
Thanks and regards,
[saugataevangelist AT gmail.com]
Happy to see a such a great blog for Terminal Server Plug and Play Device Redirection.Hope this is the right place to put my queries.
I have come with a audio driver that takes the input from a terminal client(running XP/rdesktop-Linux)and feeds any application that needs the microphone.The driver is absolutely sitting on the server.I have installed the driver under sound,video and game controllers.. as we see terminal session will not allow any audio driver other than Microsoft RDP Audio Driver,I am not able to see my driver in the list.I have no idea how to proceed any further. Hope this blog can enlighten me to move further.
Hope this blog can enlight me in
Bidirectional audio is not currently supported.
Hello, there is a solution to record sound from terminal server over RDP, the solution is called Galeon, is from colombia so is in spanish ... they have a virtual sound card that export the microhpone interface and connect it to the client, so in the client you talk with your mic and the application in the terminal server receive the buffer as a real microphone ...
The page is: http://www.slmsistemas.com
where i can buy a sound card galeon ??
can some body guide me, If RDP Microphone driver is available for Windows Server 2008 with XP Client. Thanks in Advance :)
Bidirectional Audio is now supported in win 7. Also there is a way to record sound from TS over RDP.
While connecting to TS using mstsc, there is a option button in the RDP dialog box, select Local resources tab and Remote Audio settings section, Play on this computer and Record from this computer. But this features is not available in Vista.