Jump to content


  • 0
balubeto

Windows PE 5.x boot problem

Question

Hi

 

With Windows ADK and its MakeWinPEMedia utility, I created an ISO image of Windows PE 5.x but when I start it, it does not boot.

 

His BCD is:

 

 

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>bcdedit /store "C:\Users\Public\Documents\Windows_PE\ISO_debug\x32-x64\Boot\BCD"
Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {default}
displayorder            {default}
                        {551baeb5-f0aa-11e4-826f-000c29e7d067}
toolsdisplayorder       {memdiag}
timeout                 30
Windows Boot Loader
-------------------
identifier              {default}
device                  ramdisk=[boot]\sources\boot_x32.wim,{default}
path                    \windows\system32\boot\winload.exe
description             Windows PE a 32 bit
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot_x32.wim,{default}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     No
Windows Boot Loader
-------------------
identifier              {551baeb5-f0aa-11e4-826f-000c29e7d067}
device                  ramdisk=[boot]\sources\boot_x64.wim,{default}
path                    \windows\system32\boot\winload.exe
description             Windows PE a 64 bit
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot_x64.wim,{default}
systemroot              \windows
detecthal               Yes
winpe                   Yes
ems                     No
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>

 

Where am I wrong?

 

Thanks

 

Bye

Share this post


Link to post
Share on other sites

Recommended Posts

  • 0

I modified the BCD file:

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\Boot\BCD"
Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {default}
displayorder            {default}
                        {dd8eca84-f241-11e4-826f-000c29e7d067}
toolsdisplayorder       {memdiag}
timeout                 30
displaybootmenu         Yes
Windows Boot Loader
-------------------
identifier              {default}
device                  ramdisk=[boot]\sources\boot_x32.wim,{default}
path                    \windows\system32\boot\winload.exe
description             Windows PE a 32 bit
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot_x32.wim,{default}
systemroot              \windows
bootmenupolicy          Standard
detecthal               Yes
winpe                   Yes
ems                     No
Windows Boot Loader
-------------------
identifier              {dd8eca84-f241-11e4-826f-000c29e7d067}
device                  ramdisk=[boot]\sources\boot_x64.wim,{dd8eca84-f241-11e4-826f-000c29e7d067}
path                    \windows\system32\boot\winload.exe
description             Windows PE a 64 bit
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot_x64.wim,{dd8eca84-f241-11e4-826f-000c29e7d067}
systemroot              \windows
bootmenupolicy          Standard
detecthal               Yes
winpe                   Yes
ems                     No
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>

but I have the same problem. Why?

Thanks

Bye

Share this post


Link to post
Share on other sites

  • 0

i'm not really sure why you are doing this, can you explain why you are not using MDT or SCCM to create boot wims ?

Share this post


Link to post
Share on other sites

  • 0

I noticed a very curious detail:

If I visualize the contents of the original BCD, this is displayed:

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\EFI\Microsoft\Boot\BCD"
Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
flightsigning           Yes
default                 {default}
displayorder            {default}
toolsdisplayorder       {memdiag}
timeout                 30
Windows Boot Loader
-------------------
identifier              {default}
device                  ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.efi
description             Windows Setup
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              \windows
bootmenupolicy          Standard
detecthal               Yes
winpe                   Yes
ems                     No
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\EFI\Microsoft\Boot\BCD" /v
Windows Boot Manager
--------------------
identifier              {9dea862c-5cdd-4e70-acc1-f32b344d4795}
description             Windows Boot Manager
locale                  en-US
inherit                 {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
flightsigning           Yes
default                 {7619dcc9-fafe-11d9-b411-000476eba25f}
displayorder            {7619dcc9-fafe-11d9-b411-000476eba25f}
toolsdisplayorder       {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout                 30
Windows Boot Loader
-------------------
identifier              {7619dcc9-fafe-11d9-b411-000476eba25f}
device                  ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.efi
description             Windows Setup
locale                  en-US
inherit                 {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
osdevice                ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f}
systemroot              \windows
bootmenupolicy          Standard
detecthal               Yes
winpe                   Yes
ems                     No
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>

When, however, I modify the device and osdevice elements, with the bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\EFI\microsoft\boot\BCD" /set {7619dcc9-fafe-11d9-b411-000476eba25f} device ramdisk=[boot]\sources\boot_x32.wim,{7619dcc9-fafe-11d9-b411-000476eba25f} and bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\EFI\microsoft\boot\BCD" /set {7619dcc9-fafe-11d9-b411-000476eba25f} osdevice ramdisk=[boot]\sources\boot_x32.wim,{7619dcc9-fafe-11d9-b411-000476eba25f} commands, the contents of the BCD is:

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\EFI\Microsoft\Boot\BCD"
Windows Boot Manager
--------------------
identifier              {bootmgr}
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
flightsigning           Yes
default                 {default}
displayorder            {default}
toolsdisplayorder       {memdiag}
timeout                 30
Windows Boot Loader
-------------------
identifier              {default}
device                  ramdisk=[boot]\sources\boot_x32.wim,{default}
path                    \windows\system32\boot\winload.efi
description             Windows Setup
locale                  en-US
inherit                 {bootloadersettings}
osdevice                ramdisk=[boot]\sources\boot_x32.wim,{default}
systemroot              \windows
bootmenupolicy          Standard
detecthal               Yes
winpe                   Yes
ems                     No
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>bcdedit /store "C:\Users\Public\Documents\Windows_PE\x32-x64\Media\EFI\Microsoft\Boot\BCD" /v
Windows Boot Manager
--------------------
identifier              {9dea862c-5cdd-4e70-acc1-f32b344d4795}
description             Windows Boot Manager
locale                  en-US
inherit                 {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
flightsigning           Yes
default                 {7619dcc9-fafe-11d9-b411-000476eba25f}
displayorder            {7619dcc9-fafe-11d9-b411-000476eba25f}
toolsdisplayorder       {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout                 30
Windows Boot Loader
-------------------
identifier              {7619dcc9-fafe-11d9-b411-000476eba25f}
device                  ramdisk=[boot]\sources\boot_x32.wim,{7619dcc9-fafe-11d9-b411-000476eba25f}
path                    \windows\system32\boot\winload.efi
description             Windows Setup
locale                  en-US
inherit                 {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
osdevice                ramdisk=[boot]\sources\boot_x32.wim,{7619dcc9-fafe-11d9-b411-000476eba25f}
systemroot              \windows
bootmenupolicy          Standard
detecthal               Yes
winpe                   Yes
ems                     No
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools>

How do I avoid that the {7619dcc9-fafe-11d9-b411-000476eba25f} identifier is construed as the {default} alias in the device and osdevice elements?



My complete procedure is:

md "<Windows_PE_Path>"
md "<Windows_PE_Path>\x32-x64\Media"
md "<Windows_PE_Path>\ISO"
copype x86 "<Windows_PE_Path>\x32"
copype amd64 "<Windows_PE_Path>\x64"
MakeWinPEMedia /ISO "<Windows_PE_Path>\x32" "<Windows_PE_Path>\ISO\Windows_PE_x32.iso"
MakeWinPEMedia /ISO "<Windows_PE_Path>\x64" "<Windows_PE_Path>\ISO\Windows_PE_x64.iso"
robocopy "<Windows_PE_Path>\x32\fwfiles" "<Windows_PE_Path>\Boot_files"
rd "<Windows_PE_Path>\x32" /s /q
rd "<Windows_PE_Path>\x64" /s /q
powershell Mount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x32.iso"
powershell Get-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x32.iso" ^| Get-Volume
robocopy <Drive_Letter>:\ "<Windows_PE_Path>\x32-x64\Media" /e /a-:R
powershell Dismount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x32.iso"
ren "<Windows_PE_Path>\x32-x64\Media\sources\boot.wim" boot_x32.wim
powershell Mount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x64.iso"
powershell Get-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x64.iso" ^| Get-Volume
robocopy "<Drive_Letter>:\sources" "<Windows_PE_Path>\x32-x64\Media\sources" boot.wim
ren "<Windows_PE_Path>\x32-x64\Media\sources\boot.wim" boot_x64.wim
robocopy <Drive_Letter>:\EFI\Boot "<Windows_PE_Path>\x32-x64\Media\EFI\Boot" bootx64.efi
powershell Dismount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x64.iso"
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set {default} description "<Windows_PE_x32_name>"
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /copy {default} /d "Windows_PE_x64_name>"
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /v
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set <Windows_PE_x32_ID> device ramdisk=[boot]\sources\boot_x32.wim,<Windows_PE_x32_ID>
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set <Windows_PE_x32_ID> osdevice ramdisk=[boot]\sources\boot_x32.wim,<Windows_PE_x32_ID>
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set <Windows_PE_x64_ID> device ramdisk=[boot]\sources\boot_x64.wim,<Windows_PE_x32_ID>
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set <Windows_PE_x64_ID> osdevice ramdisk=[boot]\sources\boot_x64.wim,<Windows_PE_x32_ID>
bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set {bootmgr} displaybootmenu true
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /set {default} description "<Windows_PE_x32_name>"
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /copy {default} /d "Windows_PE_x64_name>"
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /v
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /set <Windows_PE_x32_ID> device ramdisk=[boot]\sources\boot_x32.wim,<Windows_PE_x32_ID>
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /set <Windows_PE_x32_ID> osdevice ramdisk=[boot]\sources\boot_x32.wim,<Windows_PE_x32_ID>
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /set <Windows_PE_x64_ID> device ramdisk=[boot]\sources\boot_x64.wim,<Windows_PE_x32_ID>
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /set <Windows_PE_x64_ID> osdevice ramdisk=[boot]\sources\boot_x64.wim,<Windows_PE_x32_ID>
bcdedit /store <Windows_PE_Path>\x32-x64\Media\efi\microsoft\boot\bcd /set {bootmgr} displaybootmenu true
robocopy "<Windows_PE_Path>\Boot_files" "<Windows_PE_Path>\x32-64\fwfile"
MakeWinPEMedia /iso "<Windows_PE_Path>\x32-x64" "<Windows_PE_Path>\ISO\Windows_PE_x32-x64.iso"
isoburn /Q <Drive_Letter>: "<Windows_PE_Path>\ISO\Windows_PE_x32-x64.iso"

Where am I wrong?

Thanks

Bye

Share this post


Link to post
Share on other sites

  • 0

Now, my procedure is as follows:

 

 

1) md "<Windows_PE_Path>"
2) md "<Windows_PE_Path>\x32-x64\Media"
3) md "<Windows_PE_Path>\ISO"
4) copype x86 "<Windows_PE_Path>\x32"
5) copype amd64 "<Windows_PE_Path>\x64"
6) MakeWinPEMedia /ISO "<Windows_PE_Path>\x32" "<Windows_PE_Path>\ISO\Windows_PE_x32.iso"
7) MakeWinPEMedia /ISO "<Windows_PE_Path>\x64" "<Windows_PE_Path>\ISO\Windows_PE_x64.iso"
8) robocopy "<Windows_PE_Path>\x32\fwfiles" "<Windows_PE_Path>\Boot_files"
9) rd "<Windows_PE_Path>\x32" /s /q
10) rd "<Windows_PE_Path>\x64" /s /q
11) powershell Mount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x32.iso"
12) powershell Get-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x32.iso" ^| Get-Volume
13) robocopy <Drive_Letter>:\ "<Windows_PE_Path>\x32-x64\Media" /e /a-:R
14) powershell Dismount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x32.iso"
15) ren "<Windows_PE_Path>\x32-x64\Media\sources\boot.wim" boot_x32.wim
17) powershell Mount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x64.iso"
18) powershell Get-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x64.iso" ^| Get-Volume
19) robocopy <Drive_Letter>:\sources "<Windows_PE_Path>\x32-x64\Media\sources" boot.wim /a-:R
20) ren "<Windows_PE_Path>\x32-x64\Media\sources\boot.wim" boot_x64.wim
21) robocopy <Drive_Letter>:\EFI\Boot "<Windows_PE_Path>\x32-x64\Media\EFI\Boot" bootx64.efi /a-:R
22) powershell Dismount-DiskImage -ImagePath "<Windows_PE_Path>\ISO\Windows_PE_x64.iso"
23) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" | find "device"
24) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set {default} description "<Windows_PE_x32_name>"
25) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /copy {default} /d "Windows_PE_x64_name>"
26) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set {default} device "ramdisk=[boot]\sources\boot_x32.wim,<Options_ID>"
27) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set {default} osdevice "ramdisk=[boot]\sources\boot_x32.wim,<Options_ID>"
28) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set <Windows_PE_x64_ID> device "ramdisk=[boot]\sources\boot_x64.wim,<Options_ID>"
29) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set <Windows_PE_x64_ID> osdevice "ramdisk=[boot]\sources\boot_x64.wim,<Options_ID>"
30) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\Boot\BCD" /set {bootmgr} displaybootmenu true
31) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /set {default} description "<Windows_PE_x32_name>"
32) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /copy {default} /d "Windows_PE_x64_name>"
33) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /set {default} device "ramdisk=[boot]\sources\boot_x32.wim,<Options_ID>"
34) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /set {default} osdevice "ramdisk=[boot]\sources\boot_x32.wim,<Options_ID>"
35) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /set <Windows_PE_x64_ID> device "ramdisk=[boot]\sources\boot_x64.wim,<Options_ID>"
36) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /set <Windows_PE_x64_ID> osdevice "ramdisk=[boot]\sources\boot_x64.wim,<Options_ID>"
37) bcdedit /store "<Windows_PE_Path>\x32-x64\Media\EFI\microsoft\boot\BCD" /set {bootmgr} displaybootmenu true
38) robocopy "<Windows_PE_Path>\Boot_files" "<Windows_PE_Path>\x32-64\fwfile"
39) MakeWinPEMedia /iso "<Windows_PE_Path>\x32-x64" "<Windows_PE_Path>\ISO\Windows_PE_x32-x64.iso"
40) isoburn /Q <Drive_Letter>: "<Windows_PE_Path>\ISO\Windows_PE_x32-x64.iso"

 

Windows PE 32/64 bit works properly with computers that have the BIOS; while with those that have the UEFI, the CD does not boot and the screen remains black. Why?

 

Thanks

 

Bye

Share this post


Link to post
Share on other sites

  • 0

for your uefi devices are you using an architecture boot wim (for example 64bit) that matches the architecture of the device (64 bit) ?

Share this post


Link to post
Share on other sites

  • 0

After several attempts on different computer, I noticed that the only case in which the computer does not boot from my CD is the one in which this computer is a 64 bit with the UEFI.

So, how do I solve this problem ie how do I make this CD so that it starts even with the 64 bit computers with UEFI?

Thanks

Bye

Share this post


Link to post
Share on other sites

  • 0

Perhaps, I discovered the problem:

I noticed that the efisys.bin file of Windows PE 32 bit is different than 64 bit.

So, how do I create a CD of Windows PE 32/64 bit fully working? Or rather, how do I create a efisys.bin single file?

 

Thanks

 

Bye

Share this post


Link to post
Share on other sites

  • 0

To create an iso that works in any case, I thought to rename the two Efisys.bin in efisys_x32.bin and efisys_x64.bin and then use the command

 

 

oscdimg -o -u2 -udfver102 -bootdata:3#p0,e,b"<Windows_PE_Path>\Boot_files\etfsboot.com"#pEF,e,b"<Windows_PE_Path>\Boot_files\efisys_x32.bin"#pEF,e,b"<Windows_PE_Path>\Boot_files\efisys_x64.bin" "<Windows_PE_Path>\x32-x64" "<Windows_PE_Path>\ISO\Windows_PE_x32-x64.iso"

 

to create the ISO.

 

For you, with this method, I can reach my goal?

 

Thanks

 

Bye

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.