Remote Desktop Internet Explorer
Giving your users the ability to launch Remote Desktop from a Web link via RDP file is useful in a number of different scenarios. This is especially the case on a corporate Intranet where you want to maximize usability for employees and minimize the number of clicks.
- The next time you connect, you can save yourself the time of opening Remote Desktop Connection by opening the right-click menu for the computer to which you want to connect, in the Network pane from File/Windows Explorer, and then click or tap on “Connect with Remote Desktop Connection.”.
- The Remote Desktop ActiveX control is available in the following forms: The scriptable control —implements interfaces that are safe for scripting. This form of the control can be used by web clients or scripting (such as VBScript) hosts. The nonscriptable control —offers additional functionality that is not safe for scripting.
Description Use the Microsoft Remote Desktop app to connect to a remote PC or virtual apps and desktops made available by your admin. The app helps you be productive no matter where you are. Getting Started Configure your PC for remote access first. Microsoft Edge is the new default web browser for Windows 10. However, if you're running Remote Desktop Web Access (RDWEB) or web apps that require ActiveX controls, the Edge browser may not work, and we recommend that you continue to use Internet Explorer 11. As seen in the following side-by-side images, the Connect to a remote PC tab is missing from the Edge UI (the image on the left), but in.
(Just as an aside, note that for a variety of reasons (no framing, difficult to brand, awkward sign-in process, etc.) I do not consider the official Microsoft RDWeb site a viable option. As long as .rdp files are a viable option, I prefer to have these initiate remote desktop sessions from a Web page.
The Old Solution is no Longer Viable
In the past it was possible to directly point to .rdp files on a network share like this:
Both Internet Explorer 11 and Microsoft Edge would see this and happily start up a new remote desktop session. However now those times are over. IE11 is quickly fading away with no replacement planned. The original MS Edge is being replace with Chromium-based MS Edge. Both Chrome and Chromium-based MS Edge (and FireFox) sandbox users and do not allow linking to documents from a network share.
Basically the challenge is that the only remaining browser that supports pointing to a file on a network path is on borrowed time, so we need to find an alternate solution that works regardless of the browser.
Microsoft Remote Desktop Web
This Calls for a New Solution
Rather than throwing in the towel and saying it is no longer possible to start start up remote desktop sessions from Web links, we’ll need to rethink what happens when a user clicks a link in their browser. Instead of asking the Web browser to download the RDP file from a network share and hoping it will do it, we’ll stream the file using some simple ASP.NET code (I’m giving the example using ASP.NET, but you can use any server side language that you prefer).
The plus side to this method is that it bypasses the browser sandbox rule. Streaming the file from code behind will work regardless of the browser that the user is using. So this is actually a significant upgrade!
Details of How to do it:
For starters, you’ll need to update your links so they run .NET code rather than being simple HTML hyperlinks. For simplicity I changed my links to run as LinkButton controls in a simple .NET WebForm.
Then I opened my RDP file and grabbed the existing settings that I know worked. I used a simple text editor to prefix and postfix the RDP settings so they are now encapsulated as a .NET string.
Once you’ve got the RDP in a String, you can then stream the file to the user who clicked on the Web link (as application/rdp). Also remember to set the name to something descriptive (instead of filename=TestRDP.rdp).
The Code (VB .NET)
The Code (C#)
-->The following topics contain information about how you can use the Remote Desktop ActiveX control to customize the Remote Desktop Services user experience.
The Remote Desktop ActiveX control is available in the following forms:
Remote Desktop In Internet Explorer
- The scriptable control—implements interfaces that are safe for scripting. This form of the control can be used by web clients or scripting (such as VBScript) hosts.
- The nonscriptable control—offers additional functionality that is not safe for scripting. This form of the control can be used from native or managed code, but this form cannot be used by web clients or scripting-only hosts.
The following list contains the CLSIDs for the different controls for different operating system versions. Each of the CLSIDs is compatible with later system versions. For example, the CLSID for the scriptable control on Windows Vista will work on later system versions, such as Windows 7.
System version | Scriptable control CLSID | Nonscriptable control CLSID |
---|---|---|
Windows 8.1, Windows Server 2012 R2 | 301B94BA-5D25-4A12-BFFE-3B6E7A616585 | 8B918B82-7985-4C24-89DF-C33AD2BBFBCD |
Windows 8, Windows Server 2012 | 5F681803-2900-4C43-A1CC-CF405404A676 | A3BC03A0-041D-42E3-AD22-882B7865C9C5 |
Windows 7, Windows Server 2008 | A9D7038D-B5ED-472E-9C47-94BEA90A5910 | 54D38BF7-B1EF-4479-9674-1BD6EA465258 |
Windows Vista with Service Pack 1 (SP1) | 7390F3D8-0439-4C05-91E3-CF5CB290C3D0 | D2EA46A7-C2BF-426B-AF24-E19C44456399 |
Windows Vista | 4EB89FF4-7F78-4A0F-8B8D-2BF02E94E4B2 | 4EB2F086-C818-447E-B32C-C51CE2B30D31 |
In this section
Example that demonstrates the use of the scriptable interfaces.
Code examples that show the steps for implementing scriptable virtual channels with Remote Desktop Web Connection.
If you have enabled a virtual channels application in your Remote Desktop Services deployment, you can make this application available to client computers.
A sample webpage (Default.htm) is in the directory where Remote Desktop Web Connection is installed.
Some properties of the Remote Desktop ActiveX control object are restricted to specific Internet Explorer URL security zones.
For enhanced security, you might choose to disable Remote Desktop Services features.
For more information about the sample webpage that is included with the installation of the Remote Desktop ActiveX control, see Sample webpage included with the Remote Desktop ActiveX control.