Are Disk2VHD, or AOMEI / EaseUS better option than using 8.1's native VM?
If you mentioned it I didn't see it, softee -- do you have XP Pro or Home or...
Why that matters -- you wrote "8.1's Native VM". Microsoft has their free Virtual PC software, which connects to the host Windows OS [in this case 8.1] via remote desktop. The home version of XP does not include that capability, so it will not work. Microsoft included their Client Hyper-V VM Host software in win8/8.1 -- it requires XP Pro SP3. I've read of people installing win7's Virtual PC in win8/8.1, I **think** because it has lower or fewer hardware requirements then the updated Client Hyper-V.
If you have XP Pro, probably check out the hardware requirements to run Client Hyper-V 1st, making sure that you can run it, or you can try to install it & it will tell you if it can't/won't install -- the only downside I can think of if it won't install is that you've added a small bit of garbage to your copy of win8.1. If you have XP Pro & find that Client Hyper-V won't work because your hardware doesn't meet requirements, maybe Google on downloading & installing win7's Virtual PC.
https://technet.microsoft.com/en-us/library/mt169373.aspx
What difference does your choice of VM Host software make?
Microsoft's software tends to better integrate with your host Windows OS, e.g. in win7's Virtual PC I can see all of my drives & their partitions using Windows Explorer in the running VM. With VirtualBox or VMWare you have to specify folders to share, so you can move files back & forth between the host OS & the VM. That's probably the major difference you'll notice right off the bat. Virtual PC is limited to 120GB VHDs I think, which is Not the case with Client Hyper-V. When it comes to performance, when I've created a VM from a copy of Windows installed & running from a hard drive, it's had better performance in VirtualBox vs. Virtual PC. OTOH VirtualBox has semi-frequent updates, some of those have been bad, requiring a return to the older version, & each update means installing new version Additions so the VMs work better. VMware is probably the most *Pro* choice, but it can get expensive if you run more than the Player.
Turning a running copy of Windows into a VM...
Basically you're doing 2 things, regardless the software you use -- 1) you're cloning the partition where Windows is installed to a Virtual Hard Disk [VHD], & 2) you're disabling existing critical hardware drivers so that when Windows starts as a VM, it'll find new hardware, the same way it does during Windows setup/install.
The 2 things I've found critical in my own experience, is 1) reducing the size of the partition, because you don't want much free space on that VHD -- I use dynamically expanding VHDs, which means while they might be 100GB or more, their actual physical size on disk is just what is used by your software & Windows. The most efficient way I've found to backup/restore VHDs is to simply copy & paste the VHD files, so size very definitely matters. The 2nd thing I've found critical is to disable software that starts with Windows as much as possible. That's because when you 1st start the VM Windows will go nuts searching for & installing drivers. Then you'll install software that's specific to the copy of Windows in your VM, to make that VM work better, This will again cause Windows to search for & install drivers. Anything that starts with Windows can have a significant impact on Windows performance as it does that searching/installing.
I can't say what are the best tools to make that happen... What I've done more than a few times, where I did not want to disturb the installed copy of Windows what-so-ever, is use a Paragon partition image backup restored to an empty .vhd file that I created in win7. With that .vhd file still mounted or attached, I've renamed folders for stuff that starts with Windows, like the security software, usually just adding _ to the front of the folder name. Then I've done a basic defrag, to pack the files towards the front of the VHD. Then I shrink the partition as much as possible, then clone or copy or backup/restore that partition to a new Dynamically Expanding .vhd file -- Paragon software resizes the partition to match the total space available, but only writes what's in the original, small partition -- that way I can have a 100GB VHD, but have a much smaller portion actually in use. I delete the 1st .vhd file, & use the 2nd with the P2V [Physical to Virtual] tools in Paragon software.
It *may* be possible to skip that step where I shrink the partition, either with other software tools or maybe even with the latest version of Paragon's apps, but that was the only way I could get a VHD with a small footprint out of the Paragon P2V tools I've used. It definitely would be possible to optionally do a disk/partition image backup of the original copy of Windows on your hard drive, then disable &/or uninstall software that starts with Windows, do a defrag, & shrink the partition, then use the results with something like Paragon's P2V tools -- if you wanted to put things back just restore the original image backup. I haven't done it that way because I did this in stages, & never wanted to disable the original copy of Windows for any length of time, e.g. I used a regular backup image of Vista from my wife's PC, later just copying the VM to her installed copy of win7, so there really was minimal downtime on that PC.
Once those steps are done I unattach or dismount the VHD, create a new VM in whatever host software, & have it use that VHD I got after using Paragon's P2V tool. Then I start the VM, Windows goes nuts adding drivers, I add the special software, e.g. in VirtualBox it's called Additions, Windows adds more drivers, & then when everything's set I go about uninstalling or reactivating apps in those folders I renamed. I'll go into Windows Device Mgr., set it to show hidden devices, then uninstall any old drivers -- I'll also note their names so I can make sure they're removed from the registry, & then after a test restart, remove those same files from the Windows\ System32\ Drivers folder. If your guest OS is newer than XP, it also doesn't hurt to remove those old drivers from C:\Windows\ System32\ DriverStore\ FileRepository\ . The reason is if for whatever reason Windows searches for drivers in the future, I don't want it getting confused & using those -- I have had problems with that sort of thing with Windows that's been migrated to different physical & virtual environments.
What's the difference between migrating a copy of Windows & installing fresh?
Migrating you get to keep all your software, though some of it may be keyed to your old hardware & so won't be registered. I migrated a copy of my installed XP Pro SP3 to a VM maybe 3 or 4 years ago -- it ran sluggish, but it ran. I again migrated a copy late last year -- it *Barely* ran. The main difference between the 2 copies was years of Windows updates. *To me* my experience might suggest you might have better luck with your installed copy of XP as-is, vs figuring out how to add SP3 & all later updates, but that's just a guess, & the only way to tell is to try it AFAIK.
If you were going to add a fresh copy of XP, *if* your existing license was for XP Pro, I think the best way to go would be to download VirtualXP.VHD, a just over 1GB file from Microsoft that's the basis for their XP Mode VM. It will not be activated the way it would be in certain versions of win7, so you'd have to use your key, but I believe it's been modified to run better in a VM. Otherwise you'd create a new VM, create a new VHD for it, attach the setup CD/DVD or ISO, start the VM, & install Windows the same way you would with your PC.
I personally don't know of any easy way to migrate your software to a new copy of XP SP3 in a VM. That said, if you backed up the VHD with XP on it [copied the file somewhere else], you could mount the VHD in win8.1, then from the original copy of XP try copying the apps from C:\Program Files & C:\Program Files\ Common Files. Copy what you could from Documents and Settings\ All Users\ Application Data\ , [Username]\ Application Data\ , [Username]\ My Documents\ , [Username]\ Local Settings\ Application Data. Open Regedit in your original copy of XP, export the "Software" keys from the Current User & Local Machine sections, and merge those with the registry in your new VM. It might trash your VM so you'd have to restore your copy [copy paste the copy on top of the changed VHD], or you might find the majority of your software worked. That's where the majority of stuff is stored for software, but doesn't take into account any needed drivers, any needed classes in the registry [CLSID] etc., so it all depends on how complicated your installed software is.
A lot of this is also, for lack of a better word, Luck. I've migrated copies of Windows to physical hardware & VMs -- some went near perfectly where other required days of work, & I never could spot any pattern. I took a win7 64 VM, stuck it on the hard drive for a PC my sons had put together, & 5 minutes later it was activated. Did the Exact same thing on another, similar PC, & it took 3 days. The 1st XP Pro SP3 VM I converted ran right off -- this 2nd try took a day to get Windows to start, & 3-4 days later it still ran terrible. On a more-or-less whim I tried running a VHD that was a restored backup from my win8.1 tablet in VirtualBox -- it fired right up, no prior conversions at all. So really I've given up on trying to predict success, but just cross my fingers & give it a try.
Last, a bit of explanation... A VHD is the generic term for a Virtual Hard Disk [or Drive], & it's a single file that with the proper drivers installed, Windows sees as a real hard drive when it's mounted [Windows calls it attached]. All VMs use VHDs, though there are several uses for VHDs that have nothing to do with VMs.
Microsoft has 2 VHD formats, .vhd & .vhdx, VirtualBox has .vdi, though it can use other format VHDs like .vhd, it's been a while since I ran VMware but I believe it's flexible also, but with a native format I *think* of VMDK.
I never fully migrated to win8/8.1 -- as when I was running XP Pro & Vista I guess I never really saw enough advantages to add the software I use to the newer version install. They seem to run as fast in 7, I don't have anything that will run on 8.1 & not 7, so I've just been lazy. That'll change with 10, FWIW, but the upgrade process for new builds is so onerous when you migrate software, I won't start doing that in earnest until RTM.
Because I spent most of my time in 7, I like .vhd because I can mount or attach it, & since I use several VMs for testing, they're small enough that 100GB is plenty [a 23GB .vhd is large for me]. Win8.1 can use .vhdx, which can deal with much larger amounts of space, & is generally more bulletproof. The downside to using .vhd files is I jump through hoops compacting the .vhd files from time to time -- the expanding files grow from things like Windows Update, so I compact them to get rid of free space that makes the file larger. For best performance you're supposed to use fixed size VHDs for VMs, & if you ran a XP SP2 VM, in theory it would not ever grow, so the usefulness of expanding VHDs would not apply. I added a hack to my XP Mode VM so it still gets limited updates, & so it still grows.