I was just wondering, if you simply using something like gparted to completely copy a partition of a hard drive on another one, can you simply stick either of them into the computer it was copied from and start up like nothing has been changed (With the exception of the obvious hardware change, of course).
If you do a straight copy of the entire partition (not just copy/pasting the files), you still need 2 things afterwards to get a bootable system:
There are commands to install a new MBR from a Windows disk (see Chris's answer), but my favorite is to simply copy the first 440 bytes from sector 0 to the new drive via a hex editor. Download HxD, make sure you run it as Administrator, then manually copy/paste the fisrt 440 bytes of sector 0 on your existing hard drive to the new hard drive (in HxD, each row is 16 bytes long, and each sector is 512 bytes). Don't forget to hit save to commit the changes. Be very careful with this, as you can seriously mess things up if you don't know what you're doing.
For point 2, you can accomplish that using the diskpart utility, or again, using your hex editor to mofidy the correct byte. For the diskpart method, open a command prompt (as administrator), then type the following commands:
Then, go ahead and stick the new drive in and boot it up!
You can also use the BOOSECT command at a command line to copy a boot sector over. You will need to have access to Windows Vista or later install media and in particular, the \BOOT directory on the media or install directory.
Locate the install media or directories. Change to the \BOOT subdirectory Then run the following command
c:>bootsect /nt60 ?:
where ?: is the drive letter you want to copy the boot sector information TO.
GParted is cool and all, but I'd recomend using microsoft's free imaging tool imagex if you're using windows. Use WAIK to build a boot disc, and use imagex to make an image and then apply that image. Safest way to do this.