Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When it becomes available on TechNet/MSDN downloads, I plan on install Windows 7 (ultimate) on my laptop (on a shiny new hard drive). But I have a lot of things on my current XP install that will take me "some time" to move over.

So; for now, I'd like to keep my existing XP bootable.

The easiest option would be:

is it possible to P2V my existing XP install, and use it in Windows VirtualPC?

(I thought my CPU lacked VT, but I just checked, and it passes)


The new disk is plenty big, but being a laptop I can't simply strap in both disks; some initial thoughts:

  • run VMware Converter to P2V the existing XP install; copy the VM onto the new disk
  • do the same with Virtual PC, with the possible advantage that (IIRC), Windows 7 can read vhd directly, making it easier to access files (rather than apps)
    • (I'm not talking about the "boot from vhd" here; that only works for Windows 7 VMs)
  • combine the 2; VMware running from vhd - IIRC, it works - but is it slower?
  • partition the disk, copy the existing XP install onto the extra partition(s), use the Windows 7 boot manager to fire up the XP install, and (if possible) tweak the disk manager so that it knows the partitions as c / d / etc

I'm after thoughts on any of the above, or alternatives - anything that lets me:

  • run Windows 7 (new install, not upgrade)
  • on a new hard drive
  • with full access (indirect is acceptable) to the old data an apps
  • and able to cleanly remove the XP aspect when I've finished migrating
share|improve this question
From experience we have done the P2V on a few occassion during the RC's. Apart from having to re-active the XP license, we had no issues running either XP or Vista virtualised with Windows 7 as the host. We use System Centre to P2V these machines and then use Virtual PC to host these on Win 7. I mention this in a comment due to you already accepting an answer to the contrary. This is using MSDN/Retail and Volume License versions of XP and Vista. The VMWare converter solution will also work once you change the HDD driver to be able to boot XP. – BinaryMisfit Aug 6 '09 at 9:47
up vote 1 down vote accepted

Whilst you can move XP to a Virtual PC, you might run into licensing/activation issue. It is possible the Windows Key is BIOS locked and won't work in a VM session. And other keys such as MSDN or upgrade didn't work on the installed version of Windows.

I was told by Microsoft (or the folks on the activation line) that I needed to buy a retail copy of Windows and re-install it (which sort of defeated the purpose).

So when I moved from Vista to Windows 7, I re-partitioned my drive and did it that way.

share|improve this answer
As with you, the re-install would be pointless; looks like (as with other replies) partitioning is the way to go... – Marc Gravell Aug 6 '09 at 8:45
Accepted as answer for the extra details (activation etc) on why it would cause problems as a VM. – Marc Gravell Aug 6 '09 at 9:33

It depends on the type of apps you're using. If you connect the xp drive using a usb enclosure will the apps still work or are they heavily dependant on the registry?

I would probably create the vmware image and then go with the usb enclosure. If any apps fail to run you have the ability to run them virtualized. Simple and doesn't require any dualboot which is always a hassle (too much work to close everything and reboot to get to a certain app you need).

If you want to use the captured machine in Windows xp mode you might be able to convert it from a vmware image to a vhd using this tool

Here's a series of posts on how to capture directly to vhd, though I haven't read it myself. Part 1 Part 2 Part 3

share|improve this answer
Trying to use the apps off the existing drive will be a non-starter; it'll need to be the existing XP install. – Marc Gravell Aug 6 '09 at 7:53

I think the easiest way would be to partition the disk and move Windows XP to a secondary partition, like you suggested. Because it costs the least time and will ensure Windows XP will keep on working in a full-blown fashion, not virtualized.

The first guide seems to coincide, with what's mentioned in the Virtual PC Guy's blog post named in the other answers.

Try this guide:

Boot from Windows 7 fron a USB Key; Run some diskpart magic wrapped up in a script to calculate the values shrink-and-clone-to-another-volume

  • > diskpart
  • select disk 0
  • select volume 1
  • Shrink desired=28500 (where 28500 is ~15% larger than the data on the harddisk)

    • create partition primary
    • format fs=ntfs label=VHD quick
    • assign
    • Create vdisk file=E:\WINXP.VHD maximum=79999 (where 79999 is the size of the original physical disk)
    • Select vdisk file=E:\WinXP.VHD
    • attatch vdisk
    • create parition primary
    • format fs=ntfs label=WinXPVHD quick
  • clone Windows XP into the VHD

  • format the old C: and install Win7 to physical disk
  • Move out the VHD and collapse the last partition

One of possible tool to use is to install WAIK.

Capture an Image

ImageX is a command-line tool that enables the creation of Windows Image (.wim) files for deployment in a manufacturing or corporate IT environment. By using the imagex /capture command, you can capture a volume or partition to a .wim file. Once you capture your image, you can modify and apply the image either to a network or individual destination computers.

You can compress and capture your image file from Windows PE, Windows Vista, Windows XP with Service Pack 2 (SP2), Windows Server 2003 with Service Pack 1 (SP1), or a customized Windows PE provided by Microsoft Systems Management Server (SMS) Operating System Deployment Feature Pack or Windows Deployment Services (Windows DS).

Use wim2vhd to create a vhd

The Windows(R) Image to Virtual Hard Disk (WIM2VHD) command-line tool allows you to create sysprepped VHD images from any Windows 7 installation source. VHDs created by WIM2VHD will boot directly to the Out Of Box Experience, ready for your first-use customizations. You can also automate the OOBE by supplying your own unattend.xml file, making the possibilities limitless.

Fresh squeezed, organically grown, free-range VHDs - just like Mom used to make - that work with Virtual PC, Virtual Server, Microsoft Hyper-V, and Windows 7's new Native VHD-Boot functionality!

share|improve this answer
Note: work in progress! – Ivo Flipse Aug 6 '09 at 7:41

We have done exactly this on around 5 workstations at work. The initial P2V conversion was done using VMWare Converter since the boxes where going straight onto HyperV Servers however the last 3 was done using System Centre P2V. The solution Ivo described also works well.

Once the machine boots make sure you install the Virtual Machine tools. In the case of Vista this can be done before re-activating however on XP you will need to activate first.

The only issue we had is that the machines needed to be re-activated. There was no need for new license keys in any of the installs, on both Windows Vista and Windows XP installation covering Retial to Volume License Installs.

The biggest issue we had was that Virtual PC Beta on Windows 7 for some reason can't send a Ctrl+Alt+Del sequence to the Vista machine. We ended up moving the machine to Hyper-V

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.