When it comes time to replace those old PCs, you always hope you’ll be able to move the applications, documents, settings, and data from the old machines to the new ones all at once. But if you’ve migrated Windows 2000 to a new PC, you already know just how tedious the migration process can be. However, migrating Windows XP is not as difficult as migrating Windows 2000. While you need to be aware of a few of XP’s eccentricities, the migration process will go much smoother when you know what to look for and how to work out any problems that occur.

Product activation concerns
Anytime I talk about moving Windows XP to new hardware, I’m asked about product activation. Even though the product activation is the last step in the process, I’ll discuss it first.

There seems to be a lot of incorrect information going around about the product activation codes. I’ve heard rumors ranging from product activation codes not working on the new hardware to Windows disabling itself when the new hardware is detected.

The truth is, after you’ve migrated Windows XP to the new hardware, Windows will require you to reenter the product activation code. The reason you have to reactivate is that Windows realizes the new hardware is substantially different from the old hardware, so it requires reactivation as a deterrent to software piracy. After you reenter the activation code, you’re in business. There’s really nothing dark and mysterious about the process. Just enter the code and go.

The prep work
Although migrating Windows XP is easier than migrating Windows 2000, there’s still a bit of preparation work required. Begin the process by taking a look at your old system and figuring out what drive and folder Windows XP is installed in by using Windows Explorer. Normally, Windows XP should be installed in the C:\Windows folder, but it’s very important to make sure, because migrating to the wrong folder location will cause Windows XP to fail on the new machine.

Next, document which version of Windows XP (e.g., Home or Professional) the PC is running by checking the General tab of the System Properties dialog box. Go to the old machine and enter the DISKMGMT.MSC command at the Run prompt. Doing so will launch the Disk Management Console, shown in Figure A. Look through the console screen and record which partitions exist, the physical drives on which the partitions exist, the size of each partition, and what file system each partition uses.

Figure A
Look at the Disk Management Console to find out how the hard drive is configured.

Preparing the new PC
Once you’ve recorded all of the necessary information from the old machine, it’s time to begin preparing the new PC. Start by verifying that the new PC has at least as many hard drives as the old PC, and that each hard drive in the new PC is at least as large as its counterpart on the old PC.

Next, install a copy of Windows XP onto the new system. You’ll have to use the same version of Windows XP as the old PC (e.g., Home or Professional edition). You’ll also have to install the new copy of Windows XP into the same location as the old PC (i.e., typically C:\Windows).

During the setup process, Setup will ask you to create a partition to install Windows onto. The partition that you create must be at least as large as the system partition on the old PC. Keep in mind that later you’ll have to re-create the old PC’s partition scheme, so you must reserve enough space to do so.

When the setup process completes, open the Disk Management Console by using the DISKMGMT.MSC command, and re-create the old PC’s partition scheme. Make sure that any partition you create is at least as large as its counterpart on the old PC. Partitions can be larger than the original but can’t be smaller. You must also format each partition using the same file system that was in place on the old system. All tasks, such as creating and deleting partitions, changing logical drive letters, and formatting a partition, can be accomplished by right-clicking on the desired area of the graphical representation of the hard disk and selecting the appropriate command from the resulting context menu.

Once Windows is installed and you’ve re-created all of the necessary partitions, the next step is to begin configuring the new hardware by installing any hardware drivers that aren’t already loaded. Also, you can set the display to the desired resolution.

The migration process
The migration process is as simple as using the Backup utility, found on the Start | All Programs | Accessories | System Tools menu. When you open the Backup utility on the old PC, you’ll see a wizard that asks what you want to back up. Indicate that you want to back up everything on the computer to a designated network drive or other backup device, and then follow the prompts to begin the backup process. When the backup process completes, use the Backup utility on the new computer to restore the backup. It’s that simple. When the restore process completes, the old system will have been migrated to the new system. The only thing that’s left is to reboot the new system and enter the product activation code.

How the backup/restore method works
If you’ve ever tried to migrate Windows 2000 by using the backup/restore method, you know that the technique doesn’t work very well. So you may be wondering what makes Windows XP so different. After all, we configured all the new hardware before restoring the backup onto the new system, and yet the hardware settings weren’t wiped out.

The reason that backup/restore works so well under Windows XP is because of some creative programming on Microsoft’s part. If you open the Registry Editor and look at the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\BackupRestore\KeysNotToRestore, you can see how this little trick works.


You should always back up your system before working with the Registry Editor.

As you can see in  Figure B, there are several registry locations specified beneath this key.

Figure B
This registry key tells Windows which keys should not be overwritten during a restore operation.

Any of the listed keys that end in a backslash (\) are protected. The backslash means that during a system restore, those registry keys will not be overwritten. This overwrite protection allows Windows XP to preserve your system’s hardware profile during a system restore. You might have noticed in the figure that some of the keys specified end in an asterisk (*). The asterisk tells Windows to merge the old registry key with the new registry key, thus preserving old and new settings.

For multiple user data, use USMT
No Windows XP migration article is complete without mentioning the User State Migration Tool (USMT). This command line tool allows administrators to migrate user data in larger organizations and tailor the migration for specific settings. Working from a set of INF files that can be modified for specific purposes, USMT will move a number of settings during an upgrade or hardware migration, including:

  • Internet Explorer settings
  • Outlook Express settings and store
  • Outlook settings and store
  • Dial-up connections
  • Phone and modem options
  • Accessibility
  • Classic desktop
  • Screen saver selection
  • Fonts
  • Folder options
  • Taskbar settings
  • Mouse and keyboard settings
  • Sounds settings
  • Regional options
  • Office settings
  • Network drives and printers
  • My Documents folder
  • My Pictures folder
  • Cookies folder

For more information on USMT, check out the Microsoft Windows XP site.