Something Mark-my-unindicted-co-conspirator and I have run into a number of times is the dreaded Windows 2000 or XP Blue Screen Of Death (BSOD) when trying to move a hard disk from one PC to another. Sometimes when you have a new PC you just don't want to go through all the trouble of loading a new OS and all of your apps onto the new PC; you just want to pull the hard disk out, slap it in the new (faster, better, or just not broken) PC and go. It works with our servers, but not with plain old PCs. Try it with two PCs and you'll get halfway through the boot cycle and *WHAMMO!*: Inaccessible boot device. "But you were just booting off that device you stupid hunk of silicon!"
I thought about this. And, as I was stalling on building Asha's new PC from scratch, I thought about this a lot. What's different between servers and workstations? Well, the servers all have SCSI disks, and workstations tend to have some flavor of IDE disks. It can't just be SCSI vs. IDE, that doesn't really make sense. Then it came to me. All of our Dell servers use SCSI controllers made by Adaptec. All of them use the same family of Adaptec chips. From the Windows NT/2000/XP perspective they all use the same driver.
Take a look in device manager, find your IDE controller and see what Windows calls it. It might be something like "VIA Busmaster IDE Controller" or "Intel Googolephonic Moonrock PCI IDE TurnipTwaddler". From the lowest common denominator perspective of "is this thing an IDE controller" they're the same thing. From the perspective of the software driver that Windows loads during boot to take advantage of all of the controller's go-faster features, we're talking elephants and orangutans. Yes they're both mammals, but that's where the similarity ends.
I hypothesized that you could still make this work. You would, (through device manager) go into the properties for the IDE controller, hit the "update driver" button, tell it to let you pick the driver, and choose the "Standard Dual Channel PCI IDE Controller". The PC would tell you that it needed to restart in order to put the new driver into play. Instead, shut the PC down. Pull the disk drive out, put it into the new PC, boot up and let Windows figure out what the new PC's IDE controller is. This should work because it's booting using the generic driver.
I explained my hypothesis to Mark one day. He tried it on a victim PC he had kicking around and it worked. I used it last week to swing Asha's hard drive out of her old PC into her new one. All I had to do was walk the PC through loading all of the new hardware drivers (new NIC, new audio, new VGA) and I was done! So, there you have it, a tested way to move your hard drive (and all its precious contents) from one PC to another without having to reformat it and reload the OS. Hoot!