I'm running an Italian version of Windows 7, which includes a localized boot manager.
However, I recently replaced my motherboard with a new one based on UEFI firmware instead of BIOS (Asus Z87 Deluxe), and after installing the exact same copy of Windows 7 x64 I was running before, the boot manager is not localized anymore. The startup screen displays "Starting Windows" instead of its Italian translation, and pressing F8 brings up an English boot menu instead of a localized one.
This only happens at boot time; after booting, the system behaves normally and is fully localized.
I checked the boot settings using BCDEDIT, and all locales are correctly set to it-IT:
Windows Boot Manager
--------------------
identificatore {bootmgr}
device partition=\Device\HarddiskVolume1
path \EFI\Microsoft\Boot\bootmgfw.efi
description Windows Boot Manager
locale it-IT
inherit {globalsettings}
default {current}
resumeobject {9ef36aa6-4188-11e3-909d-d32f0c3871c8}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
Caricatore di avvio di Windows
-------------------
identificatore {current}
device partition=C:
path \Windows\system32\winload.efi
description Windows 7
locale it-IT
inherit {bootloadersettings}
recoverysequence {9ef36aa8-4188-11e3-909d-d32f0c3871c8}
recoveryenabled Yes
osdevice partition=C:
systemroot \Windows
resumeobject {9ef36aa6-4188-11e3-909d-d32f0c3871c8}
nx OptInWhy this behaviour, and how can I fix it?
Update 1
I noticed something strange here; the motherboard setup shows "Windows Boot Manager" as the main boot option, while the actual boot disk is listed as the second one. Looks like the Windows Boot Manager is actually being loaded from somewhere else than the first partition of the first disk... what's going on here?
Update 2
I've also checked the EFI boot manager using bcdedit /enum FIRMWARE. That one looks correctly localized, too:
Boot Manager per firmware
---------------------
identificatore {fwbootmgr}
displayorder {bootmgr} {9ef36aa4-4188-11e3-909d-d32f0c3871c8} {a30e8550-47e4-11e3-9ad1-806e6f6e6963}
timeout 1
Windows Boot Manager
--------------------
identificatore {bootmgr}
device partition=\Device\HarddiskVolume1
path \EFI\Microsoft\Boot\bootmgfw.efi
description Windows Boot Manager
locale it-IT
inherit {globalsettings}
default {current}
resumeobject {9ef36aa6-4188-11e3-909d-d32f0c3871c8}
displayorder {current}
toolsdisplayorder {memdiag}
timeout 30
Applicazione firmware (101fffff)
-------------------------------
identificatore {9ef36aa4-4188-11e3-909d-d32f0c3871c8}
description CD/DVD Drive
Applicazione firmware (101fffff)
-------------------------------
identificatore {a30e8550-47e4-11e3-9ad1-806e6f6e6963}
description Hard DriveUpdate 3
I can confirm the same behaviour on a VMware (Workstation 10) virtual machine; using the same ISO for installation, when the VM firmware is configured for BIOS the boot manager is fully localized, while when it's configured for EFI it's configured for localization (all locales set to it-IT) but it actually runs in English.
2 Answers
If I'm right then it's just wrong bootloader setting.
You can use bcdedit utility within running system, to set correct locale.
- Run
cmdas Administrator (typecmdin win search dialog and run with ctrl + shift + enter) - Run
bcdedit, findWindows boot loadersection with identifier{current} - If there is
localeset asen-US, then run command :
(replace cs-CZ with your locale)
bcdedit /set {current} locale cs-CZ
If you don't know your locale look here
Alternatively you may suppress loading screen, with:)
bcdedit /set {current} quietboot yes
I encountered the same issue on two separate Greek Windows installations. It appears that, for some reason, Microsoft failed to include the correct localisation files for its UEFI boot loader.
A workaround I found is to replace these files with their BIOS boot counterparts. Since it is not exposed by default, you will have to temporarily assign your EFI System Partition (ESP) a drive letter using diskpart. Below, "WP" refers to your Windows partition (C: in your case).
Copy files as follows:
- WP\Windows\System32\<locale>\winload.exe.mui --> WP\Windows\System32\<locale>\winload.efi.mui
- WP\Windows\System32\<locale>\winresume.exe.mui --> WP\Windows\System32\<locale>\winresume.efi.mui
- WP\Windows\Boot\PCAT\<locale>\memtest.exe.mui --> ESP\EFI\Microsoft\Boot\<locale>\memtest.efi.mui
After replacing these files, your boot screen, "Advanced boot options" menu (F8), hibernation resume screen and memory diagnostics tool should be localised.
1