Microsoft

Directly access Windows XP applications from Windows 8

Learn how to configure and use the Client Hyper-V RemoteApp tool to directly access Windows XP applications from Windows 8.

XP_Mode_App_Remote_8-23.png
In the article, Create a Client Hyper-V Virtual Machine for Windows XP, I showed you how to create a virtual machine in Windows 8's Client Hyper-V designed for Windows XP. Using this technique, you can run Windows XP applications from your Windows 8 system by switching over to the virtual machine. However, since that article was published, I've received email from readers wondering if there was a way to run Windows XP applications in Windows 8 like you could with the Windows XP-Mode feature in Windows 7.

As you may remember, when you installed an application in the Windows XP Mode virtual machine, a shortcut for that application would appear on the Windows 7 Start menu. This allowed you to launch your Windows XP applications without having to first load the Windows XP VM and then launch them from the virtual Windows XP's Start menu.

Well, after I wrote the Make USB devices accessible to a Windows XP virtual machine article where I showed you how to use Remote Desktop to connect to a networked virtual machine running in Windows 8 Client Hyper-V, I began to wonder about Microsoft's RemoteApp tool, which is designed to make programs accessed through Remote Desktop Services appear as if they are running on a local computer. Could RemoteApp work with Windows 8's Client Hyper-V to allow you to directly access Windows XP applications? As I began to experiment, I discovered that it was indeed possible.

In this article, I'll show you how to configure and use the RemoteApp tool to directly access Windows XP applications from Windows 8.

Prerequisites

Before I get started, I'm going to assume that you have read the previous articles on setting up Windows 8's Client Hyper-V for running Windows XP and have configured your set up accordingly.

It is imperative that you have Remote Desktop functioning as described in the last article in this list. If you don't, this RemoteApp technique won't work correctly.

Note: The techniques and steps described in this article are designed for a tech-savvy audience and should therefore be performed precisely and with great care to avoid possible loss of data or potential system failure. The reader assumes all risk when implementing these tips.

Install RemoteApp in Windows XP

To allow Windows XP to recognize a RemoteApp connection from Windows 8, you will first have to install the RemoteApp update in Windows XP. To do so, launch Hyper-V and start your Windows XP virtual machine. Once Windows XP is up and running, launch Internet Explorer, go to the Microsoft Download Center, and search for Enable RemoteApp. When you get to the Update for Windows XP SP3 to enable RemoteApp page, as shown in Figure A, click the download button. Then, follow the instructions to download and install the update in Windows XP.

Figure A

Fig A 8-23-2013.png

You need to download and install the Update for Windows XP SP3 to enable RemoteApp.

When you get to the last page of the installation wizard, you'll by prompted to click Finish, as shown in Figure B. When you do, your Windows XP VM will restart.

Figure B

Fig B 8-232013.png

Once you complete the installation, your Windows XP VM will restart again.

Modify the registry in Windows XP

In addition to installing the Update for Windows XP SP3 to enable RemoteApp, you need to make slight modification in Windows XP's Registry. To begin, launch the Registry Editor by pressing [Windows]+R to access the Run dialog box, type Regedit in the open text box and click OK. Then, open the following subkeys in succession:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Terminal Server\TSAppAllowList

When you open the TSAppAllowList subkey, locate and access the fDisabledAllowList value and change the Value data from 0 to 1, as shown in Figure C. Once you click OK, close the Registry Editor.

Figure C

Fig C 8-23-2013.png

You will need to change the fDisabledAllowList Value data from 0 to 1.

You'll need one last piece of information before you are done in your Windows XP VM. In order to create the RemoteApp file that you'll use to launch your Windows XP application in Windows 8, you'll need to get the path to the application's executable file. To do so, locate the application shortcut, right click on it, and select the Properties command. When you see the Properties dialog box, select the Find Target button and take note of the path and executable file name.

For my example, I am going to run Paint Shop Pro 8 as a RemoteApp and the path to that application is:

C:\Program Files\Jasc Software Inc\Paint Shop Pro 8\Paint Shop Pro.exe

Remember that just like when using Remote Desktop to connect to a Windows XP in Hyper-V, your Virtual Machine must be up and running in order for you to use the RemoteApp connection feature. As such, once you have obtained the path, you will Log Off Windows XP, as shown in Figure D. You can then minimize your Windows XP Virtual Machine Connection window and close the Hyper-V Manager window.

Figure D

Fig D 8-23-2013.png

Your Virtual Machine must be up and running in order for you to use the RemoteApp connection feature, so just Log Off the system.

Customizing your RDP file

Now that Windows XP is configured and ready to serve up remote applications, you need to create a RemoteApp connection file, which is very similar to a Remote Desktop Connection file, but with a few additional settings. In fact, you will use your Remote Desktop Connection file as the basis for your RemoteApp connection file.

As you may remember, in the Make USB devices accessible to a Windows XP virtual machine article I had you save your Windows 8 Remote Desktop Connection configuration file (.RDP) after you made the modifications for your USB devices. In the case of my example, I saved the file as VM-ONE-XP.RDP in the Documents folder.

To begin, locate your RDP file and make a copy of the file. Then rename the copy using the name of the Windows XP application that you want to run as a RemoteApp. For my example, I am going to run Paint Shop Pro 8 as a RemoteApp, so I'll make a copy of my VM-ONE-XP.RDP and rename it to Paint Shop Pro.rdp.

Once you create your RDP file, you'll need to make a few changes to the file so that it will open your Windows XP application as a RemoteApp. Fortunately, the RDP file is actually a text file, so you can edit it in Notepad. The quickest way to do so is to launch Notepad and then drag your RDP file and drop it into Notepad's open window. With your RDP file in Notepad, you'll need to edit a pair of existing lines and add three more lines.

To begin, locate the following two lines:

remoteapplicationmode:i:0

alternate shell:s:

And change them to:

remoteapplicationmode:i:1

alternate shell:s:rdpinit.exe

Then, add the following lines that will define your Windows XP application as a RemoteApp:

disableremoteappcapscheck:i:1

remoteapplicationname:s:{Application Name}

remoteapplicationprogram:s:{Path to executable file}

Where {Application Name} is name of your application and {Path to executable file} is the path to and the executable file name.

For example, to define Paint Shop Pro as a RemoteApp, I edited the Paint Shop Pro.rdp file, as shown in Figure E.

Figure E

Fig E 8-23-2013.png

I made several changes to my RDP file so that it will run Paint Shop Pro as a RemoteApp.

As you make changes to your RDP file, make sure that in the command lines you edit or add, there are no spaces between the colons and the text that comes before or after them. The Application Name and Path to executable file can have spaces as necessary. Once you have made the appropriate changes, save the file and close Notepad.

Launching your RemoteApp

Now that everything is configured, you can use your RemoteApp. To do so, double click on the RDP file that you just created. When you do, you'll see a RemoteApp window appear on your Windows 8 desktop that indicates that your application is starting. Figure F shows my RemoteApp window for Paint Shop Pro.

Figure F

Fig F 8-23-2013.png

As your RemoteApp connection is starting up, the flowing progress bar will let you know that the connection is working.

When the Show Details button becomes active, you will need to select it to display the Windows XP login screen, as shown in Figure G.

Figure G

Fig G 8-23-2013.png

You will have to login to Windows XP to complete the connection.

You will then have to type your password and click OK. (As I mentioned in the previous article when we created the Remote Desktop Connection file, normally, I would have selected select the Allow me to save my credentials check box to automate the login procedure, but for some reason, I have not been able to get that feature to work when connecting to a Windows XP virtual machine in Hyper-V using a Remote Desktop Connection - it just locks up the connection procedure.)

Once you have entered your password, the RemoteApp will launch your Windows XP application inside of Windows 8 with its own window. You can then use your application as you normally would, as shown in Figure H. Now, as long as you used the Windows 8 Remote Desktop Connection configuration file to which you made the modifications for your USB devices, you RemoteApp will have access to the drives and printers connected to your Windows 8 system.

Figure H

Fig H 8-23-2013.png

With RemoteApp, you'll see your application in a Windows XP style window in Windows 8.

What's your take?

Will the RemoteApp technique of emulating Windows XP Mode be useful to you? As always, if you have comments or information to share about this topic, please take a moment to drop by the TechRepublic Community Forums and let us hear from you.

About

Greg Shultz is a freelance Technical Writer. Previously, he has worked as Documentation Specialist in the software industry, a Technical Support Specialist in educational industry, and a Technical Journalist in the computer publishing industry.

Editor's Picks