Solution 1:

It sounds like your Windows 7 disc is broke and you should try to create a new one.

Creating a bootable USB

If you have good internet connection, then you can download your windows 7 version here (you still need a legit key ofcourse).
Then you can use Microsoft own tool to make a bootable windows 7 USB.

  • Start up Windows 7 USB/DVD download tool when you have downloaded and installed it
  • Select the iso file you downloaded in the Source field and click Next
  • Insert your USB drive which you want to use (4GB is enough)
  • Select USB DEVICE and click Next
  • Select the USB device you want to use and click BEGIN COPYING

When it is done, you should have a working bootable Windows 7 USB

The same steps are used for creating a DVD, just select DVD instead of USB device.

BCD Repair

Windows already have a tool for this purpose, called BCDboot.

If the system partition has been corrupted, you can use BCDboot to replace the system partition files with new copies of these files from the Windows partition.

When you have booted to the Windows disc, then go to the command prompt (see here) and type the following to recreate the BCD on the C drive:

  1. attrib -r -s -h c:\boot\bcd - unhide BCD so it can be deleted
  2. del c:\boot\bcd - delete the current BCD
  3. bcdboot C:\windows - create a new BCD on the C drive

From here you should be able to boot into Windows again.

Solution 2:

I had this exact same problem and I did what most people did which was google for an answer and hope for the best. The win 7 install disk has a repair computer option that allows some automatic startup failure fixes to be implemented. Sometimes this does work, but this time it didn't. Think like a computer had a blog post that ended up being the saving grace.

But to make a long story short, here is what I did after I got the 'windows failed to start' error:

  1. boot from win 7 DVD or usb stick, preferably with the same version and type of windows you have on the target boot drive. For usb stick, use usb 2.0 port (3.0 may cause unexpected errors)
  2. After picking the language, select 'Repair your computer' (do not install win7!)
  3. Select 'use recovery tools that can help fix problems starting Windows...'
  4. Select 'Command Prompt' (CMD) to launch CMD with admin privileges.
  5. type “diskpart” (without quotes) and press enter to launch DISKPART utility:

    • type “list disk” to get a list of physical disks installed. Identify which disk has windows boot partition.
    • type select disk 0 where 0 = disk # with Win7 boot partition
    • type list partition. Win 7 has a 100 or 200MB boot partition size and is primary.
    • type 'select partition 1` where 1 = the boot partition #
    • type detail partition and check to see if the partition is active. If active, go to next step.
      • to make boot partition active, type active and when CMD reports the partition is active, restart the computer into recovery/repair mode (win7 install disk again) and return to CMD prompt.
    • type exit to exit out of DISKPART utility
  6. type c: to get to the boot partition drive's root folder. (c: is the drive letter of boot partition

  7. type bootrec /fixmbr. Should get 'The operation completed successfully' message.
  8. type bootrec /fixboot. Should get 'The operation completed successfully' or 'element not found' message.
  9. Restart the computer back into recovery mode/repair mode and load CMD prompt.
    • Switch to your boot partition directory if you are not already there (usually c:)
  10. type bcdboot c:\Windows where 'c:\Windows' is the exact path to your windows folder. Keep in mind that in recovery mode, the path of the boot partition and path to windows may be different. In my case it was **e:**\Windows.
    • If you get an error 'Failure when attempting to copy boot files' or suspect you may have an EFI system partition, try typing bcdboot c:\Windows /s c: /l en-us
  11. Restart computer (remove startup disks). Windows 7 should load normally.

I had windows 7 64 bit intel i5 3rd generation with an SSD drive. I used a usb thumb drive with win 7 64 bit loaded on it (rufus 1.4.9). Make sure you use usb 2.0 port. USB 3.0 port may give you errors in certain steps (3.0 drivers unavailable at the bios level in most cases).

My copy of win7 was more recent (2014) and had an additional option for recovery tools that includes windows explorer. I used that in addition to the CMD prompt to see which partition had windows installation folder.

This repair trick may also work for win 8 and/or win2k8/2012 server editions. What didn't work: Trying the use bcdedit to repair/rebuild the bootloader file. I got 'element not found' errors. Also, changing the boot order of the drives in bios didn't do anything.


edit 20 May 2018: I've upgraded to win8.1x64 + classic shell several months ago after a few programs crashed that I couldn't get working again after several reinstall attempts; never looked back. Whether you are able to fully recover or not, consider the upgrade.