Randy's Tripod Homepage...
Creation Date: February 04, 2010... ... Version 1,  February 04, 2010...
Last modified: Friday, 05-Feb-2010 13:33:42 EST

How I moved my XP system and modified it's inactive registry

Last updated on February 04, 2010

My desktop has 2 hard drives, and up until Feb 01/10, both W2K Pro
and XP Pro were both on the same drive.
On Feb 01/10, just as I was starting my monthly backup, the drive with
the operating systems died and I could not start my system.
I was able to get the drive working again by putting it in the freezer
for about 20 minutes and quickly backed up all the data on it.
Not only that, it is still running fine 4 days later!

I decided to move my XP system to the other drive so that I would
be able to boot to one or the other system if a drive acted up.

On drive 1, I have a 3.9G partition labeled E:, and on drive 2, XP was in
a 3.99G partition called K:. XP is using about 2.4G. So I decided to
switch drive E: and drive K:.

Since I did not want to reinstall all the updates since XP SP3, and all the
programs I have installed in XP, I searched the internet to see if there is
a way to move XP rather than rebuild it. I did find several web pages that
indicated that it was possible, so I decided to give it a try. First, I made
sure I had everything backed up very well.

I had just bought Terabyte's Image For Windows, and had created an XP rescue CD
using BartPE and their plugin, and booted my system using it. I tried to restore
my XP system to the 3.9G E: partition using the backup from the 3.99G K:
partition and IFW said it wasn't big enough. It turns out that IFW needs a
partition the same size as the one it backed up, at least the way I used it.

I also have Ghost 8.3 and even though it is old, it backed up XP on my K:
partition and restored to the E: partition with no problem!

Of course, XP on the new partition would not boot due to the changes, so I
again searched the internet for what had to change, and found several methods.

Method 1
The first try involved running the XP install CD and doing an install/repair.
This worked, but removed over 60 updates that had to be reinstalled. Also, since
the files that used to be on drive E: were now on drive K:, any link to a file
that used to be on E: was invalid. There were also a lot of registry entries
that did not get changed by the repair and were wrong, even though XP would
now boot. So I used Registrar Lite to change all references of K:\ to E:\.
This resolved a lot of problems but not all of them. So, even though this
method had almost worked, I was not happy with it and decided to try again
after making sure this version was backed up.

Method 2
From Microsoft web sites http://support.microsoft.com/kb/223188 and
http://support.microsoft.com/kb/249321/ I hoped that I could just modify
the registry for the new XP system and get it to boot.
So I restored XP again using the original K: backup to drive E:. And of course,
it would not boot at this time. I wanted to change the drive ids so they would
match the new data, so drive E: had to become drive K: and drive K: had to
become drive E:. Since I could not boot XP, I could not do this, and besides,
I found out you cannot change the drive letter of the system you are running.
From studentinfo.wordpress.com/2006/07/23/remote-registry-editing-and-registry-recovery/
I had found out that you can read an inactive registry using REGEDT32,
so gave it a try. Running under Windows 2000, regedt32 would load the inactive
hive for everything but the SYSTEM hive, and that of course is the one I had
to modify.
Searching the internet again, I found a program called REGDATXP..
http://www.shareup.com/RegdatXP-download-13053.html ... that said it
would read an inactive registry. It could, but the trial version would not
save any changes.
So I tried using NOTEPAD to edit the SYSTEM registry file. It did, and I made the
required changes, but when I save it back, it was not usable.

Method 3
Now comes the good part.....
By the way, my SYSTEM file is in K:\WINDOWS\system32\config
I decided to try NOTEPAD++ from http://notepad-plus.sourceforge.net/uk/site.htm
so I restored the SYSTEM file, then used version 4.8.5
and edited the SYSTEM file, and using NOTEPAD++'s HEX feature, I made the following
changes by searching for \DosDevices\...

I changed \DosDevices\E: to \DosDevices\K: and
changed \DosDevices\K: to \DosDevices\E:

and then saved the file.

Crossing my fingers, I shut down Windows 2000 and booted XP, and wonder of
wonders, IT WORKED!

So I now have XP on drive 1 and Windows 2000 on drive 2, and all links and
registry pointers for both systems are correct.

I am a HAPPY camper....