Windows 7 - Seamless Apps in Windows Virtual PC (Virtual XP) and Application Compatibility
I'm running the Windows 7 RC and I'm the Windows Virtual PC Beta along with Virtual Windows XP (a separate download). If you have an application that won't run in Windows 7 by default (they're out there) then you have two choices, aside from getting a version that does work.
First Try: Compatibility Mode
You have two choices with Compatibility Mode. You can always just right click on the program's Icon and click Compatibility Mode, and "lie" to the program about what version of Windows this is. This isn't just a version fib, it also patches up APIs and generally makes things friendly for your old application.
Alternatively, you can type in "Compatibility" in your Start Menu and select "Run Programs made for previous version of Windows. This will start a troubleshooter that will help you select your app and figure out what it needs.
You walk through a Wizard, explaining what worked before (different OS, etc) and it'll suggest what it can do about it.
Second Try: Seamless "Virtual XP Mode"
People who know what Virtualization usually assume this means that they'll need to run a Windows XP VM (which they do) and it'll be a hassle (which it isn't) as they'll have a "window of an OS inside their OS."
Here's the process, once you've installed Windows Virtual PC and Virtual XP. Run Virtual XP from the Start Menu, or from your "Virtual Machines" folder.
Once it's started, install the old application you want. I'm going to install FileZilla, an FTP client.
NOTE: There's NOTHING wrong with FileZilla under Windows7. This is JUST an example.
Select "for all users of this computer" during the installation, as you want the icon published to the "All Users" part of the Start Menu. If you don't have this option, you can always move the icon later.
Now, shut down the Virtual XP machine by clicking the close icon. It will hibernate.
Notice in your Windows 7 Start Menu that FileZilla (or whatever) has appeared...it's in the Windows 7 Start Menu.
Run FileZIlla it from here, like you would any other program. You can, of course, even pin it to the Windows 7 Taskbar. When you run it, there may be a moment where you'll see 'Initializing Virtual Environment, and you might see this dialog:
Here you can decide to run the App or the Machine. I'll run the App. After I start running Apps, I'll not see this dialog again, unless I start the Machine again directly.
Here's FileZilla running from inside the Windows XP VM. It looks like Windows XP (notice the Crayola Colors) but the Windows 7 Task Manager is running over the top of it.
You can see the Virtual PC Host Process in the task manager. There's also a "Virtual PC Application Launcher" that you might see.
If I hover over the icon in the Windows 7 Taskbar, it says "remote."
You'll even see Tray Notifications from the Virtual XP machine (like Security Center, etc) published to the "host" tray. (Yes, I know it's not officially called the tray, but it is de facto "The Tray.")
You can even "publish" Internet Explorer 6, by copying its icon to the All Users Start Menu. I right-clicked on the Start Menu from within Virtual XP and clicked "Open All Users", then right-dragged the Internet Explorer icon to the All Users Start Menu. Now IE6 is a choice:
...and I have an unholy alliance between IE6 and IE8, as you can see them both running here on my Win7 machine:
It's also worth pointing out that this trick works with Vista Virtual Machines as well. So, while Windows 7 (I hear) is profoundly compatible with Windows Vista (basically everything works) you can still run a Vista SP1+ VM and have "Seamless Apps" jump out of it by making sure the right integration features are enabled. I tried this running Visual Studio 2003 under Vista and Visual Studio 2002 under XP, then publishing them both so I could work on them seamlessly under Win 7.
This is all stuff you can do NOW, so go have fun.