QUESTION :
My blind friend has to use both Windows 7 and Windows 10. Her trusted old external audio interface does not have drivers for Windows 10, so she uses Windows 7 for work when she records cassettes to digital files, and she uses Windows 10 for other work because the newest screen-reading features work better there.
Dual boot is working for her, but it’s difficult for her to catch that moment during boot when the system asks which OS to boot. So I thought it would be great to have a cmd script she could launch from within an OS to switch to Windows 10 when she’s booted into Windows 7 and vice versa.
Is it possible? Is there any cmd or Powershell command that would make her computer boot to the other installed OS?
ANSWER :
If both systems share the same Bootmgr (i.e. they’re menu items in the Windows Boot Manager), you can use bcdedit
to set the “bootsequence” parameter:
- Find the entry in
bcdedit /enum osloader
; - Set the one-time sequence with
bcdedit /bootsequence "{id_of_other_os}"
; - Check whether it was set using
bcdedit /enum "{bootmgr}"
. - Reboot.
On UEFI, this also works if the systems have different boot managers (e.g. if dual-booting Windows and Linux) and you choose one or the other through your firmware boot menu. In this case, you need to set the EFI “BootNext” parameter, but through Windows it’s still masqueraded as “bootsequence”, only the bcdedit commands are slightly different:
- Find the entry in
bcdedit /enum firmware
; - Set the one-time sequence with
bcdedit /set "{fwbootmgr}" bootsequence "{other_os}"
; - Verify using
bcdedit /enum "{fwbootmgr}"
. - Reboot.