Recently, I ran into a problem when I tried to install another copy of windows on a different drive.
You see I had no idea that Windows 10 only keeps one copy of its boot-loader no matter many operating systems are installed.
I also had no idea that it merges any existing boot-loaders into the new one upon installation. In other words, when I installed windows on the new drive my old boot-loader was deleted and its contents were put into the new boot-loader ON THE NEW DRIVE.
This wouldn’t of been a problem if I hadn’t intended on using that drive for a completely different machine. Which is exactly what I did.
That meant that I couldn’t boot up my original machine anymore (without the new drive) because the boot-loader no longer existed on it.
After much trial and error, I ended up with a solution to this, and many other boot-loader issues.
The following steps should recover from almost any kind of boot-loader corruption/problem.
Boot into the Windows Recovery Environment using a USB or using the existing recovery partition on your system.
Open up command prompt and locate your windows drive. (Sometimes the drive letter will change in the recovery environment so be sure to find the correct letter).
Run the following commands in order, keeping in mind the drive letter you found earlier (be sure to replace the bracketed content and remove the brackets):
bootsect /nt60 SYS
sel disk [Windows Disk # Here]
sel part [System Partition # Here]
bcdboot [EXISTING WINDOWS DRIVE LETTER]:\Windows /s V: /f UEFI
Reboot to Windows
Note you may have multiple windows entries, try each one till you find the one that works
Now you can delete the extra entries using msconfig utility, and then check the box that says make boot changes permanent and hit apply.
You’re done 😉