Easiest way to move my Windows installation to an SSD?

ImageX is a free tool that is part of the Windows 7 WAIK (download). It is what we use for imaging machines at work. It can even be used to create backups of the machine. If you're doing the C drive (you have another drive D, and your SSD is currently set to E), then it would just be a matter of booting into Windows PE, and then

ImageX /capture c: d:\image.wim "bootDrive" /verify /compress fast

That will make a very large file named image.wim on the other drive. You could even map a drive, and put it on the network, which is what we do.

Then, reconfigure the drives to make sure that the SSD is now C:\.

Reboot into Windows PE again, and type:

imagex /apply d:\image.wim 1 c: /verify

Then, after that, it is CRITICAL to run this command, still in PE:

bcdboot.exe c:\windows

that will have it make everything bootable.

If bcdboot.exe fails you might have to mark the partition you copied Windows on as active first using the diskpart utility.


Windows 7's built-in backup feature makes this very easy, as long as you have another (third) drive to store the backup on.

http://www.winsupersite.com/article/windows-7/replace-your-hard-drive-using-free-windows-7-tools

I just did this this weekend, and it worked perfectly.


My successful experience:

  • Attach the SSD drive and format as NTFS
  • Boot with the Windows 7 original DVD -> Restore
  • Check the source drive letter and destination drive letters (e.g. E: and H:)
  • Execute:

    ROBOCOPY "E:\Program Files" "H:\Program Files" /MIR /SEC /SECFIX /R:0
    ROBOCOPY "E:\Program Files (x86)" "H:\Program Files (x86)" /MIR /SEC /SECFIX /R:0
    ROBOCOPY "E:\Windows" "H:\Windows" /MIR /SEC /SECFIX /R:0
    ROBOCOPY "E:\Users" "H:\Users" /MIR /SEC /SECFIX /R:0
    BOOTSECT /nt60 H: /mbr
    
  • Detach the old drive and boot again with the Windows 7 original DVD -> Restore

  • Shutdown
  • Swap the drive, power on, select to boot from the new drive in the BIOS