Windows 10 Troubleshooting: Error upgrading to build 1607, 0x80070057-0x2000A
Problem
This time upgrade fails with error: 0x80070057-0x2000A, which means "The parameter is incorrect".
While checking with logs in c:\windows~BT, log names: Setupact.log and setuperr.log, we see below excerpt.
2016-10-11 14:12:07, Info SP Create BOOTMGR object RetainBootDefault:n
2016-10-11 14:12:07, Info SP Setting {default} to {ae179ceb-a28b-11e4-a386-74e6e20d9a1b}
2016-10-11 14:12:07, Info SP Cleaning up debugger settings.
2016-10-11 14:12:07, Error SP Failed to close the system store. Status = [c000000d]
2016-10-11 14:12:08, Error SP CAddBootEntry: Failure while adding the boot entry. Error: 0x80070057[gle=0x00000057]
2016-10-11 14:12:08, Error SP Operation failed: Add boot entry for C:\WINDOWS.~BT\NewOS\WINDOWS. Locale = en-US. Error: 0x80070057[gle=0x000000b7]
2016-10-11 14:12:08, Error SP Operation execution failed: 10. hr = 0x80070057[gle=0x000000b7]
While upgrading the operating system from one build to another, the upgrade process will update the loader entry in BCD store, however, it failed.
When we try to enumerate the information of BCD using BCDedit, we see below entry and at the end of below excerpt we see "The parameter is incorrect".
So, we had damaged BCD store.
C:\Windows\System32>bcdedit Windows Boot Manager
identifier {bootmgr} device partition=\Device\HarddiskVolume1 path \EFI\Microsoft\Boot\bootmgfw.efi description Windows Boot Manager locale en-us inherit {globalsettings} default {default} resumeobject {4168b767-9264-11e6-83ac-801934dced16} displayorder {default} toolsdisplayorder {memdiag} timeout 30 Windows Boot Loader
identifier {default}
device partition=C:
path \windows\system32\winload.efi
description Windows 10
locale en-us
inherit {bootloadersettings}
isolatedcontext Yes
allowedinmemorysettings 0x15000075
osdevice partition=C:
systemroot \windows
resumeobject {4168b767-9264-11e6-83ac-801934dced16}
nx OptIn
bootmenupolicy Standard
The parameter is incorrect.
Solution
Rename previous BCD, by checking on the active partition if it is MBR drive or on EFI FAT32 partition if GPT drive.
Once renamed use command bcdboot c:\windows, if MBR drive;
or BCDBoot C:\windows /s z: /f all, if GPT drive.
Here, c:\ is drive where we have windows folder or root directory
z: is drive letter given to EFI partition.
Once BCD store is generated upgrade process went through.