Three Modes of Windows XP Mode


Enhanced Mode and Basic Mode

Windows® XP Mode provides seamless integration of the VM (guest) with the Windows 7 host desktop, by means of Integration Components (ICs). ICs are a set of binaries which run inside the VM and communicate directly with the host OS. They enable Integration Features like clipboard sharing, printer sharing, file system and drive sharing, Start menu integration and file association with virtual apps. This allows the user to switch freely between the XP VM and Windows 7 desktops and applications. You can run Windows XP Mode as a full Windows XP desktop in two different ways: Enhanced Mode and Basic Mode. 

  1. Enhanced Mode is the default mode in which the Windows XP Mode VM starts. Majority of users will prefer this mode, as it is easy to use and provides the complete set of integration features described above. For example, saved credentials feature is provided in Enhanced Mode, so that users don’t have to login each time they launch Windows XP Mode, whereas this is not available in Basic Mode. Enhanced Mode is implemented using a connection channel based on the Microsoft® Remote Desktop Services RDP protocol. One of the options on the VM Toolbar under Tools is ‘Disable Integration Features’ (Figure 1). Clicking on this option switches the Windows XP VM to Basic Mode.
  2. Basic Mode provides basic integration features such as mouse and keyboard integration, USB support, time sync and heartbeat parity between the VM and the host. Integration features such as clipboard sharing, drive sharing and printer redirection are not available in this mode. This mode is useful for power users in software dev/test scenarios, where explicitly displaying the system level settings and BIOS messages as the VM boots up is important.   Apart from these differences, using the Windows XP desktop environment in Basic Mode is similar to using the Enhanced Mode.

image001

Figure 1. Using XP Mode VM Tool Bar to switch between Basic and Enhanced Modes

Virtual Applications: The ‘Invisible’ Third Mode

Virtual Applications Mode is the third mode – a completely seamless solution to application compatibility. This is the most likely and preferable way to launch and run your virtual applications, as they are seamlessly integrated with the Windows 7 desktop and Start menu. When an application is installed in the Windows XP Mode VM, a shortcut is automatically published to the Start menu of Windows 7, as explained in the previous blog. The key features of using virtual applications are:

  • Users can launch and run the legacy apps from Windows 7 Start menu and save the files created using virtual apps to their Windows 7 folders (My Documents, for example).
  • Files created using such applications have their file association enabled, which means that, clicking the file’s icon shortcut will also launch the required virtual application and open the file.
  • Virtual applications’ icons can be integrated with Windows 7 Super bar and the System Tray as well. In Figure 2, Microsoft Forefront™ Security running as a virtual application is shown in System Tray (within a brick red color outline on the Super bar).
  • Language bar support is provided for virtual applications. Users can launch a virtual app in their preferred language, and the Language bar would appear on the host desktop (Figure 2), enabling the user to start using the app in the chosen language. You can see the German language bar outlined in a brick red color rectangle in Figure 2, which enabled the use of Internet Explorer® German version as a virtual application.

image002

Figure 2. Language bar use and System tray integration of virtual applications

  • Virtual applications running in the VM have the ability to access the host folders such as My Documents.
  • Users can also configure the XP Mode VM to access only specified drives on the host.
  • A user can simultaneously use multiple virtual applications. They run in the same RemoteApp session started by the first one. As such, opening the second and subsequent applications is very fast.
  • Integration features are also available for virtual applications, enabled by the RDP protocol. USB devices can be attached and used from within a virtual application.
  • Users can also configure any virtual application to automatically start upon host start-up, by simply adding the virtual application’s published shortcut to the host’s start-up folder.  Microsoft Outlook® shown in Figure 3 would start automatically upon Windows 7 start-up.  Microsoft Excel® installed as a virtual application is shown in Figure 3 (among a number of virtual apps), as a short cut published under Windows XP Mode Applications.  Using this shortcut user can launch the virtual application.

image003

Figure 3. Adding a Virtual App (MS Outlook) to the Windows 7 Startup Folder

Engineering Overview:

Here is an overview of how Virtual Applications work, with a reference to the RemoteApp technology. Diagrams presented below are only a logical abstraction:

  • When a legacy application is installed in the VM, it gets added to a list of virtual applications (called the Allow list) whose shortcuts will be published to the Windows 7 Start menu. A Publisher object in the VM retrieves this list of applications from the VM’s Start menu (All user profile). This list changes only when new applications are installed or uninstalled in the VM.
  • The VM also maintains another list which should not be auto published (called the Exclude list). This is a static list.
  • Windows Remote Desktop Services RDP and RemoteApp technology is adapted to achieve seamless integration of virtual applications with Windows 7. Windows XP Mode VM functions as an RDP remote ‘server’, whereas the Windows 7 desktop serves as the RDP ‘client’ (Figure 4).
  • In case of Windows XP Mode, both the Windows XP Mode VM and the Windows 7 desktop co-exist on the same single machine, and are connected to communicate by a guest host communication channel based on RDP (Figure 4; Right). The VM itself is running in the background and is never visible to the user while using virtual applications.
  • Application’s GUI from the RemoteApp session is ‘remoted’ and presented to the Windows 7 desktop. Users see and use the virtual application in the same way as they would see a native Windows application. RemoteApp packages the graphics generated in response to user’s keystrokes and mouse clicks and sends them to the Windows 7 desktop where they are displayed.
  • Instead of using the RDP file to launch a remote application, user would be clicking on a virtual application of file icon/short cut to launch the virtual application (shown as Excel icon in Figure 4). Vmsal.exe, a WVPC component, mediates the launching of the virtual application. Since there is no actual network involved, this communication is fast and efficient.
  • When the user launches a virtual application, Vmsal.exe first starts the XP Mode VM and then establishes a connection to the VM and starts a RemoteApp session. RDP stack components are started in this session. An RDP virtual channel establishes a handshake between the host and the VM. Requests from the host to the VM, initiated via user’s mouse and keyboard inputs, are executed in the VM, similar to how they are executed in case of RemoteApp.
  • The RemoteApp logic checks against the allow list and launches the application in the VM.
  • Application in the VM creates a window. The window hook notifications are sent to the Windows 7 desktop. A plug-in creates the corresponding proxy window on Windows 7 desktop, and displays the application UI.
  • User’s input events are kept forwarded to the VM. When the user closes the virtual application window, the app exits in the VM. The VM is hibernated within 5 minutes after the last virtual application is closed, to conserve host resources. This time is configurable.

image004 image005

Figure 4. Architecture of XP Mode Virtual Applications (Right) compared to RemoteApp Architecture (Left)

In Closing…

There are three ways of using a Windows XP Mode VM. Virtual Apps and Enhanced Mode typically are preferred for business desktops. Windows XP Mode is prepared such that its configuration and setup are easy for the user and IT Admin. Joining the XP Mode VM to a network domain and using USB devices also is very easy. We will cover these aspects in the next article. Check out Windows XP Mode RC Build today, and let us know what you think, either via the comments section here, or sharing your feedback on the WVPC and Windows XP Mode Forum on Technet here.

Prasad Saripalli

Principal Program Manager

Microsoft Virtualization Team

Comments (39)

  1. Anonymous says:

    Hi everyone,

    I have a problem with the integration features of Windows XP Mode. The computer is a notebook that is both used stand alone and connected to a docking station where two monitors are attached. Usually the computer is not shutdown but only hibernated. Windows 7 can handle this very well that the number of displays changes when the computer is hibernated. But the integration features don’t like this at all. When I start a Windows XP Mode application the virtual computer is startetd in background and then when the application should appear there is a message box that the integration features can not start. When the Windows XP mode computer is started, the virtual computer screen appears for a short period with wrong geometry and aspect ratio, then there is also a message box, that the integration features can not start. So one always has to completely shutdown the Windows XP Mode computer. But then the start of an application takes such a long time because the Windows XP has to be completely booted.

    Many Greetings

    Michael

  2. Anonymous says:

    @George: Thanks for your input.

    @Andrew:  As noted, you can increase the number of items being displayed in jump list. Right click on "Start" button -> Properties -> Start Menu (tab) -> Customize -> Start Menu Size.   However, the list is displayed in alphabetical order.

    @Tony B: If the Integration Components and the ‘Upadte to enable seamless applications in a virtual environment’ are installed in the VHD, and the new VM’s name is not the same as the deleted VM’s name, the virtual apps would get published to the Start menu as expected. If this is not the case, please send us an email with details (guest OS etc) using the email link at the top of this blog article.

    @Jack Stockton: Yes, XP updates should be applied and AV software installed in the VM.

    thank you.

    Prasad Saripalli (MSFT)

  3. Anonymous says:

    Although XP mode is great and I have been using it with all of my homework applications, none of the programs that I loaded into XP mode are not showing up in the windows 7 start menu. Am I doing something wrong?

  4. George says:

    I find myself using the Basic Mode for most of my work, as you say in a software dev/test scenario.  And I really wish that I could get Clipboard functionality and the ability to share drives easily as VPC 2007 allowed me to.

    I know I can map network drives (which is basically what VPC2007 did), however it’s nice to have Windows do it for you.  But I can’t find a way of making the Clipboard work without enabling the fully blown integration.  This to be is a backwards step.

    Despite that, I’m quite impressed and do love the possibilities that all the new functionality brings. I just wish I hadn’t lost any old functionality.

  5. Andrew says:

    Is it just me, or does the ‘Recent virtual machines’ jump list off the Windows 7 start bar only show your top X machines alphabetically?

    I run 42 different VMs and only the top 10 are ever shown.  If I increase the ‘Number of recent items to display in Jump Lists’ setting then I see more, but always the first ones alphabetically, even if I’ve not run them for weeks.

  6. Tony B says:

    I wiped out one of my VPCs except for the vhd.  I then made a new vmc with that vhd and everything seems fine, but the published apps aren’t showing up again in my start menu.  Is there some way to refresh this?  All my settings seem right and it used to work with the same VHD.  Thanks

  7. When using the XP Mode virtualization, do I need to install XP Updates and Anti-virus software?

  8. Petr says:

    Guys,

    when RTM bits are due to arrive?

    Thank you

  9. Tony B says:

    Just to follow-up… re-installing the RemoteApp update seemed to correct my App publishing issue.

  10. Obits says:

    Microsoft confirms the launch date of its newest version of Windows october 22

  11. Michael Smith says:

    I am running Shoretel 7.5 in windows xp mode RC as an application. When I move the call manager towards the edge of the screen the program disappears and I can no longer start it nor see that it is running. I have tried alt-tab also, though it does not show as running. If I do not move it towards the edge it acts correctly.

  12. Robert says:

    Going over it, I find that it is only going to moderately help.  This doesn’t help with 64bit compatibility as it is only a 32bit OS.  Unless i missed something and there is a 64bit version of the XP mode install.

    I am also interested in the answer the the question posted earlier about antivirus and updates.

  13. "…User’s input events are kept forwarded to the VM. When the user closes the virtual application window, the app exits in the VM. The VM is hibernated within 5 minutes after the last virtual application is closed, to conserve host resources. This time is configurable…"

    Where do we configure this app idle time from? I cannot see such an option? Is it .vmc option?

    Thanks,

    Petar

  14. Mohammad Amirani says:

    Hello.

    I want know how I can share an installed printer (32bit) on VM to host machine (Windows 7 64bit).

  15. Ron says:

    Prasad,

    I am trying to use XP mode to use Smarthome manager. This requires it to communicate with a USB device that plugs into a wall socket. The Smarthome software works fine with the same computer when I had XP installed but in XP mode under windows 7. Do you have any suggestions or will I have to use an XP machine with the program?

    Thanks Ron

  16. Andrey says:

    What is the hardware of the virtual XP? Is it exactly the same as that of the Windows 7? If so, does an app in virtual XP have the same 3D acceleration as the host?

  17. Bob W says:

    How about drivers (Trust tablet) that do not exist for the 64 bit windows 7, will the original drivers installed in the xp mode VPC enable use of the tablet in programs installed in the xp mode?

  18. William Pessoa says:

    I LOVE this feature.

    I do have a question. Is there a way to run a host apllication in the virtual PC.

    Example. I install Office 2007 in Windows 7. It is the same application for Windows XP. How do I use it in the Virtual PC.

    I found one issue. Using Cisco VPN it works well in the Enhanced mode, but does not work on the Virtual Applications: The ‘Invisible’ Third Mode. It looks like it works but I cannot reach the servers after successfully connecting to the VPN. It does not bother me too much though…

  19. Bill C. says:

    Howdy from TX!

    I have a need to run some XPMode apps in AD Integrated Authentication mode, and I have found some other posts stating that the XPMode VPC can be joined to an AD domain.  I haven’t actually been successful in doing this myself — unable to get the XPMode VPC to see/join the domain. I noticed the VPC is using a 192.186.x.x ‘virtual’ IP subnet which is not the same as the IP subnet of the host Win7 system’s LAN NIC. Can this be changed in the XPMode VPC via the VPC Manager without issues?  Or is there another way to get the ‘integration’ functionality to see the Win7 Host system LAN connections in order to find the AD server and join/credential to the domain? I have tried the usual trickery including adding manual HOSTS file entries to the XPMode VPC to no avail. Suggestions greatly appreciated…

    Thanks,

    Bill C.

  20. Samantha B. says:

    I have similar problems to some mentioned above.

    I can run the Cisco VPN within the XP virtual machine but the host machine cannot connect with the VPN connection.

    Alternatively, I could use the applications that need to connect to the VPN within the virtual machine BUT the USB footpedal device to control the app’s playback is not recognized by the virtual machine.

    Bottom line: I need to share the VPN connection OR have the XP virtual machine see the USB footpedal device.

    Any help with this will be appreciated very much.

    Samantha B.

  21. Dan_IT says:

    I use Virtual PC / XPM for work and accessing multiple client VPNs.  Unfortunately, Microsoft’s use of RDP for virtualization creates an issue connecting to VPN’s that restrict connections from remote computers.  In my case, all connections using Cisco Anyconnect is sacrificed. Thanks MS (and Cisco)!  I’m now 50% less productive.

  22. Debbie C. says:

    Does anyone out there know if there a way to change the screen resolution on the Virtual PC in XP Mode?  When I go to the display properties in the running virtual XP machine, it is fixed at 1360×766 and won't allow me to change it.  I tried shutting down the VM, but the settings don't have a display option.   I have an application that requires 1024×768 which gives me an error message stating that I need to change the resolution or it won't launch.  If you know how I can change the resolution on the Virtual PC in XP Mode, please email me at debbie.collins@usa.net.  Thanks!

  23. Dragonie says:

    The screen resolution in XP Mode appears to be fix according to the screen resolution of the host machine.  To increase your XP Mode resolution you can do one of several things:  increase the resolution on the host machine, use a higher resolution monitor, or add a second monitor.   If you add a second monitor the resolution in XP Mode will be the sum of both screens in one direction and the total size in the other direction.  This means that if the monitors are side by side and the same resolution the XP mode horizontal resolution will be twice that of one monitor and the veritical resolution will be the same as either monitor.  Now if one of the monitors is configured in Windows 7 to be slightly above or below the other monitor XP Mode's vertical resolution will be the sum of one of the monitors plus the difference between the postitions of the monitors.

  24. Warren Johnson says:

    I'm having a problem with file association. I see your article says it should work, but for some reason it doesn't. If the file association isn't automatically created, is there a way to manually add it?

  25. calvin wu says:

    hi. i got fine window 7 computer in my company, however we need to use a program which only can use window xp pact 2. how could run virtual window xp in pact 2?

  26. Larry CK says:

    Why does Virtual Application / Invisible mode only works under administrator's account? I' mean, one must be logged in using user name 'Administrator' and not just any account with administrative privileges on the host.

    It is unreasonable to give out domain administrator password to users that need to run some legacy applications.

    Is there a workaround to make Virtual Application / Invisible mode to work for any user account with restricted rights?

  27. godfather says:

    running xp fine. my apps insist i go to win7

    All is fine but my programs will not run now.I have no cd or dvd recorders

    I down loaded the latest drivers for both but the are not available in win 7 I tried virtual pc and xp .but when I try to apply the apps that I downloaded .

    Virtual pc wants me to install the program from a floppy (4,379)from a floppy? get real NO  CD OR DVD to install from

    Help me please I am completely broke from all the upgrades I had tobuy to grt this computer up to date for win7

    Thank You (broke)                godfather

  28. John CT says:

    My name is John. Recently, I bought a new computer system with Windows 7 Ultimate 64-bit that was custom built. I seek for help on how to setup Windows XP Mode and Windows Virtual PC programs.

    I installed Windows XP Mode and Windows Virtual PC programs in my C drive. But, I have been having trouble with learning how to set its settings up in a specific way. There no document instruction appears in my Windows 7 Start Menu. Last month, I created a Virtual Hard Disk in a wrong way. By this, my Virtual Hard Disk won’t let me to access any of my physical hard drives or folders. I don’t fully understand how to change it.

    If you can help me with my problems, please respond to this post. Then, I would describe my problems. Thank you very much!  

  29. John Byrd says:

    Bill C to join a xp Mode computer ti a domain you must make the windows xp mode windows small then click on tools then settings then change the network adapter from shared nat to the network adapter that is connected on the windows 7 host or click on the windows vertual pc icon in all programs then click xp mode then settings then network then click shared nat and change it to the network adapter that is connected on the win 7 host it will take 30 seconds to get the ip from the dhcp server then you can use the static ip setting just like the win xp pro from before xp mode came out

  30. John CT says:

    To John Byrd,

    I want to have a full access to everything on my physical computer from the Virtual Machine of Windows XP Mode. This included installing any programs for XP onto my physical hard drives from the Windows XP Mode environment. What I need to do by steps to make it happen?

    John CT

  31. Sol R says:

    I want to run Rbase a 1980's Database program in XP mode. Since this is a 16bit DOS program, I run it now in XP via a Pif shortcut on my desktop which launches a BAT file. Will I be able to create a working short cut to this pif on my Win7 desktop?

  32. Larry Alba says:

    How do I get the XP Virtual Machine to run on my new Fujitsu AH531 Notebook?

    It downloads, but is not seen on the programs list.

    Yes, I enabled hardware virtualization mode in Bios setup.

  33. Folsom Screenpro says:

    Welcome to Kryoco Technology, home of the miniFreeze! Kryoco offers Powerpoint Clicker, Live PowerPoint Presentation and more for best price.

  34. Chris V says:

    I have a Lenovo ThinkCentre and I was able to get XP Mode to run but after installing my first program in XP mode I don't see it on my Windows 7 Start Menu to run seamlessly?

  35. Max says:

    Is there a way to connect to a remote location directly from the XP virtual pc? – My host computer (where the virtual pc is installed) has a network drive pointing to computer X. I need to access that drive from the virtual pc, but it has to be done directly to computer X and not through the host computer. I tried to add it to the network drives on the virtual PC, but of course the IP address of computer X is not reachable.

    Thanks.

  36. Max says:

    Found it. Just need to run the network through the host’s network card instead of NAT.

  37. J L Brown says:

    How can I get my virtual machine to save my customised toolbar in Excel.
    Everytime I shut the system down, it deletes my customised toolbar
    Any suggestions?

  38. Julianich Defrancisa says:

    KrojamSoft FilesSearch Tool helped me in this case.

  39. chris nemeh says:

    ho ho ho!