Sunday, December 13, 2015

Repair the EFI Bootloader in Windows 7/8/10

Firstly, boot from a UEFI Windows 8 recovery disk (CD/DVD/USB). Go into the Advanced options and run the Command Prompt.
Enter diskpart to use the DiskPart tool to ensure you have all the right partitions and to identify your EFI partition - the key thing here is that your EFI partition is formatted as FAT32:
DISKPART> sel disk 0

Disk 0 is now the selected disk.

DISKPART> list vol

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     E                       DVD-ROM         0 B  No Media
  Volume 1     C                NTFS   Partition    195 GB  Healthy    Boot
  Volume 2         WINRE        NTFS   Partition    400 MB  Healthy    Hidden
  Volume 3                      FAT32  Partition    260 MB  Healthy    System
Then assign a drive letter to the EFI partition:
DISKPART> sel vol 3

Volume 3 is the selected volume.

DISKPART> assign letter=b:

DiskPart successfully assigned the drive letter or mount point.
Exit DiskPart tool by entering exit and at the command prompt run the following:
cd /d b:\EFI\Microsoft\Boot\

bootrec /fixboot
Delete or rename the BCD file:
ren BCD BCD.bak
Use bcdboot.exe to recreate BCD store:
bcdboot c:\Windows /l en-gb /s b: /f ALL
The /f ALL parameter updates the BIOS settings including UEFI firmware/NVRAM, /l en-gb is to localise for UK/GB locale. The localisation defaults to US English, or use en-US.
Reboot and and you will get your Windows Boot Manager.