I have an odd issue booting from a flash drive that suspect to be related to a BCD file problem. I'm being too dense to figure it out, wonder if someone with experience in this area has any thought.
As a simple example, let's say that I have partitions on the flash drive, each with one OS like this:
FAT32 Partition
Windows 11 Setup Media
Windows 11 Customized Sysprep Image
Each of these is on a separate partition all by itself. Preceeding the two Windows media partitions is a small 100 MB FAT32 partition. The only reason for this partition is to hold the \efi and \boot folders for the BCD since some UEFI systems won't boot from an NTFS partition.
Note that both of these are different Windows 11 distributions. The first is simply the plain Microsoft consumer editions ISO image. The second holds a couple of customized sysprep images I have made. However, when I choose to boot that customized image, it instead boots the other Windows 11 setup image.
After some experimentation, I've figured out that this happens whenever I have more than one distribution of the same operating system. It seems that it will always boot to the first image of that type in the list. For example, if I had two separate Windows 10 distributions, if would only allow me to boot to the first Windows 10 partition no matter which I select from the boot menu.
I can't help but think that there must be something in the BCD that is responsible, but for the life of me I cannot figure it out.
So long as I put a different OS on each partition, everything is fine. For example, this works flawlessly:
FAT32 Partition
Windows 10 Setup
Windows 11 Setup
Macrium Reflect Boot Disk
Below are two different views of my BCD file. The first is just a standard output of a bcdstore /enum of the relevant BCD, the second is the same BCD store but with verbose output. Anything stand out here?
NOTE: This is only the BCD for booting from a UEFI based system. This particular drive will never be used with a BIOS based system.
systemroot \Windows
resumeobject {8801932e-e70e-4ce9-a7d7-47f8e63192d7}
bootmenupolicy Standard
detecthal Yes
winpe Yes
[/CODE]
As a simple example, let's say that I have partitions on the flash drive, each with one OS like this:
FAT32 Partition
Windows 11 Setup Media
Windows 11 Customized Sysprep Image
Each of these is on a separate partition all by itself. Preceeding the two Windows media partitions is a small 100 MB FAT32 partition. The only reason for this partition is to hold the \efi and \boot folders for the BCD since some UEFI systems won't boot from an NTFS partition.
Note that both of these are different Windows 11 distributions. The first is simply the plain Microsoft consumer editions ISO image. The second holds a couple of customized sysprep images I have made. However, when I choose to boot that customized image, it instead boots the other Windows 11 setup image.
After some experimentation, I've figured out that this happens whenever I have more than one distribution of the same operating system. It seems that it will always boot to the first image of that type in the list. For example, if I had two separate Windows 10 distributions, if would only allow me to boot to the first Windows 10 partition no matter which I select from the boot menu.
I can't help but think that there must be something in the BCD that is responsible, but for the life of me I cannot figure it out.
So long as I put a different OS on each partition, everything is fine. For example, this works flawlessly:
FAT32 Partition
Windows 10 Setup
Windows 11 Setup
Macrium Reflect Boot Disk
Below are two different views of my BCD file. The first is just a standard output of a bcdstore /enum of the relevant BCD, the second is the same BCD store but with verbose output. Anything stand out here?
NOTE: This is only the BCD for booting from a UEFI based system. This particular drive will never be used with a BIOS based system.
Code:
Windows Boot Manager
--------------------
identifier {bootmgr}
description Windows Boot Manager
locale en-US
inherit {globalsettings}
default {default}
displayorder {default}
{77d49df3-5873-433c-8b52-72d291c7469d}
toolsdisplayorder {memdiag}
timeout 30
displaybootmenu Yes
Windows Boot Loader
-------------------
identifier {default}
device ramdisk=[E:]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path \windows\system32\boot\winload.efi
description Windows 11 Setup
locale en-US
inherit {bootloadersettings}
isolatedcontext Yes
osdevice ramdisk=[E:]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot \windows
bootmenupolicy Standard
detecthal Yes
winpe Yes
ems No
Windows Boot Loader
-------------------
identifier {77d49df3-5873-433c-8b52-72d291c7469d}
device ramdisk=[F:]\sources\boot.wim,{ramdiskoptions}
path \Windows\system32\boot\winload.efi
description Windows 11 Sysprep Editions
locale en-US
inherit {bootloadersettings}
{globalsettings}
osdevice ramdisk=[F:]\sources\boot.wim,{ramdiskoptions}
[CODE]
Windows Boot Manager
--------------------
identifier {9dea862c-5cdd-4e70-acc1-f32b344d4795}
description Windows Boot Manager
locale en-US
inherit {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default {7619dcc9-fafe-11d9-b411-000476eba25f}
displayorder {7619dcc9-fafe-11d9-b411-000476eba25f}
{77d49df3-5873-433c-8b52-72d291c7469d}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout 30
displaybootmenu Yes
Windows Boot Loader
-------------------
identifier {7619dcc9-fafe-11d9-b411-000476eba25f}
device ramdisk=[E:]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path \windows\system32\boot\winload.efi
description Windows 11 Setup
locale en-US
inherit {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
isolatedcontext Yes
osdevice ramdisk=[E:]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot \windows
bootmenupolicy Standard
detecthal Yes
winpe Yes
ems No
Windows Boot Loader
-------------------
identifier {77d49df3-5873-433c-8b52-72d291c7469d}
device ramdisk=[F:]\sources\boot.wim,{ae5534e0-a924-466c-b836-758539a3ee3a}
path \Windows\system32\boot\winload.efi
description Windows 11 Sysprep Editions
locale en-US
inherit {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
{7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
osdevice ramdisk=[F:]\sources\boot.wim,{ae5534e0-a924-466c-b836-758539a3ee3a}
systemroot \Windows
resumeobject {8801932e-e70e-4ce9-a7d7-47f8e63192d7}
bootmenupolicy Standard
detecthal Yes
winpe Yes
resumeobject {8801932e-e70e-4ce9-a7d7-47f8e63192d7}
bootmenupolicy Standard
detecthal Yes
winpe Yes
[/CODE]
My Computers
System One System Two
-
- OS
- Win11 Pro 24H2
- Computer type
- PC/Desktop
- Manufacturer/Model
- Kamrui Mini PC, Model CK10
- CPU
- Intel i5-12450H
- Memory
- 32GB
- Graphics Card(s)
- No GPU - Built-in Intel Graphics
- Sound Card
- Integrated
- Monitor(s) Displays
- HP Envy 32
- Screen Resolution
- 2560 x 1440
- Hard Drives
- 1 x 2TB NVMe SSD
1 x 4TB NVMe SSD
1 x 4TB 2.5" SSD
- PSU
- 120W "Brick"
- Keyboard
- Corsair K70 Mechanical Keyboard
- Mouse
- Logitech MX Master 3
- Internet Speed
- 1Gb Up / 1 Gb Down
- Browser
- Edge
- Antivirus
- Windows Defender
-
- Operating System
- Win11 Pro 23H2
- Computer type
- Laptop
- Manufacturer/Model
- Lenovo ThinkBook 13x Gen 2
- CPU
- Intel i7-1255U
- Memory
- 16 GB
- Graphics card(s)
- Intel Iris Xe Graphics
- Sound Card
- Realtek® ALC3306-CG codec
- Monitor(s) Displays
- 13.3-inch IPS Display
- Screen Resolution
- WQXGA (2560 x 1600)
- Hard Drives
- 2 TB 4 x 4 NVMe SSD
- PSU
- USB-C / Thunderbolt 4 Power / Charging
- Mouse
- Buttonless Glass Precision Touchpad
- Keyboard
- Backlit, spill resistant keyboard
- Internet Speed
- 1Gb Up / 1Gb Down
- Browser
- Edge
- Antivirus
- Windows Defender
- Other Info
- WiFi 6e / Bluetooth 5.1 / Facial Recognition / Fingerprint Sensor / ToF (Time of Flight) Human Presence Sensor