Editing BCD store on another disk?

#1
I'd like to use EasyBCD to edit the BCD store on my USB key (yes, it's bootable via Windows Vista WinPE). Is there a way to open that store instead of the default store on my Vista machine?
 

mqudsi

Mostly Harmless
Staff member
#2
Hi SteelForce, welcome to NeoSmart Technologies.

Answer: Yes!
Download the latest EasyBCD 1.61 beta build (see stickied thread) and install.
EasyBCD | FIle | Select BCD Store

Should do the trick :smile:
 

mqudsi

Mostly Harmless
Staff member
#4
You're welcome.

This is a new feature, only just implemented. I'd appreciate if you could let me know exactly how well it works (or doesn't).

Good luck :smile:
 
#5
You're welcome.

This is a new feature, only just implemented. I'd appreciate if you could let me know exactly how well it works (or doesn't).

Good luck :smile:
Hi! Just downloaded the EasyBCD 1.61.0.21279 beta ... ran into some issues when accessing a WinPE 2.0 USB boot disk (confirmed to work prior to EasyBCD view/edit attempts), thought I'd report back...
  • When selecting File/Select Store and entering the patch to the BCD on the USB boot media, I found that _sometimes_ the "View Settings" display screen wouldn't refresh ... that is, it would continue to display the BCD info from the C:\ drive. Selecting another button (e.g., "Change Settings") and then going back to "view" would refresh the display to show the USB's BCD.
  • I attempted to use the "backup & restore bootloaders settings" to back up the USB's BCD to a file before making any changes ... but even though a message appeared in the status bar indicating "File successfully saved...", the backup file never appeared; tried this both with the default file, and after modifying it to a different path/filename. However, if the C:\ BCD info was selected, the backup settings function worked fine.
What I was hoping to accomplish was to modify the BCD on the USB boot media so that I could add a Bart PE boot option; I copied the BartPE files (\I386, \Programs, etc) to the USB, re-opened the USB BCD in EasyBCD and selected "Add/Remove Entries."

The existing entry Windows Setup was listed, as expected for a WinPE-only boot. I selected "Add an entry;" now, I was going to select the WinPE tab here, but the only options were "WIM Image" or "Extracted Filesystem Layout;" with the former I presume I would have had to specify a WIM file (WinPE 2.0 only), and with the latter the drive was forced to C:\ and couldn't be changed ... so this option wouldn't work for my wanting to add a BartPE pointer (i.e., to elect to boot from ([boot]\I386\setupldr.bin).

So I selected Windows NT/2K/XP/2003 under the WINDOWS tab, renamed it BartPE and hit ADD ENTRY. At this point something went whacky - I apologize, but I didn't take notes, and I can't recreate it on the original USB because now whenever I open the USB's BCD in EasyBCD (to remove teh BartPE entry, which is currently showing up in VIEW as a Real-mode Boot Sector), I can't - even though the USB BCD shows up in VIEW, when I select anything else from the toolbox (CHANGE, ADD/REMOVE, etc), EasyBCD only shows the options from the BCD on C:\ ?

Oh, wait ... ok, I just tried REFRESH STORE after selecting ADD/REMOVE, and now I see the USB: Windows Setup and BartPE. Ok, let's delete BartPE and see if I can recreate ... more in just a little bit....
 
#6
ok ... now when I select the BartPE entry that I had created earlier and attempt to delete it, I get the message No valid entries found!

Hit REFRESH STORE, whereupon the "no valid..." msg again appears, go back to VIEW, and the BartPE entry is still there.
 
#7
So I ignored the previous (errant) BartPE entry I had created, and just repeated the process to create BartPE2 ... again, I'm attempting to have this reference the \I386\setupldr.bin on the USB during boot.

Selected a Windows entry again, named it BartPE2, and hit ADD ENTRY; soon as I did, I get the message:
Valid BCD Registry not Detected.
Easy BCD has detected that your BCD boot data and MBR are eitehr not from the latest version of Windwos Vista, or don't yet exist.

If you'd like EasyBCD to correct these issues, press OK. This will modify the MBR and requires that you have Windows Vista installed on this machine. you can cancel at any time. Press 'No' to exit EasyBCD now.
This is the same error that had occurred when I attempted to create the first BartPE BCD entry - when I hit YES, I get another message:
BootDrive
Unfortunately, EasyBCD could not automatically detect the drive letter of your boot device. This can be caused by a non0standard MBR, use of a 3rd-party bootloader, or a failed Windows Vista install.

To proceed, please enter the letter of your boot drive below. The boot drive is identified by the presence of special files <etcetc>
So I selected C:\ (only available option) as the 'Correct Boot Drive' and hit OK...next msg was:
EasyBCD is now attempting to recreate the BCD registry from scratch. In order for this process to succeed, we need you to pick the letter fo a Windows Vista to be the default boot target.
Again, selected C:\ (only available option) as the 'Vista Drive Letter' and hit OK...next msg was:
The store import command is invalid. Run "bcdedit /?" for command line assistance.
Dismissing this error brought up the original Valid BCD Registry not Detected again; at this point I hit NO and EasyBCD exited. Upon restarting EasyBCD and opening the USB's BCD, this time I didn't see any reference to BartPE2, which was odd because when I created the BartPE entry I followed the above steps.

Note, also, that this all occurred on a release (not beta/RC/etc) version of Windows Vista, and in fact the USB bootable media was created on the same system.
 

mqudsi

Mostly Harmless
Staff member
#8
Hi netarc, welcome to NeoSmart Technologies....

Thanks for your in-depth report. A couple of pointers first:

* You can't backup/restore non-system BCD stores. This is a limitation imposed by Microsoft, and though we could work around it by setting the store you want to backup as the system store then doing a backup/restore then switching the store back to C:\Boot\BCD, we chose not to do so because it's a high-risk operation; and if it should fail in the middle all involved would be quite upleasantly screwed.

* The entire "Diagnostics" screen with support for resetting the BCD data and recreating missing BCD files will not work with a secondary store. The "invalid BCD data detected" message will modify the system store.

* You can't select a different drive from C:\ because it only lists physical hard drives installed on your system. Next build will allow you to choose any and all disks to boot from for a WinPE image, as well as a "boot" device (like you had wanted).

* Tip: You can set a drive to boot by adding a WinPE entry on C:\, then going to the "Change Settings" page and changing the letter to BOOT. This will be taken care of in the next build.


Hope this helps. Let me know how it goes from here.
 
#9
Aha ... thx for the clarification re: the backup/restore issue; given one of the errors, I kinda wondered whether that was the case. Prior to trying EasyBCD I had attempted to use bcdedit.exe to backup the USB's BCD, and had no luck.


So can you offer some advice re: how I would use EasyBCD to modify the BCD on a USB flash boot drive to add the ability to boot into BartPE? Would I use the WinPE tab, or the Windows tab in the Add/Remove Entries section? I suspect the latter, since it looks like the WinPE options only seem to support PE 2.0?

I think all I need to do is add a BCD entry that effectively points to the BartPE file...
[boot]\I386\setupldr.bin
...I think this is all that's necessary to allow BartPE to boot ... but I'm a n00b to Vista's BCD, so I might be underthinking this.
 
Last edited:
#11
I know exactly what you mean...it is so that you can have a cd with WINPE2.0 and WinPE 1.6 or something that uses an bartpe with using the vista boot loader from winpe2.0.

I too want to do that exact setup so that i can dual boot Microsoft DaRT5 and DaRT 6 from the same cd. 1 CD with everything on that i need for both XP and Vista. So far i havent found anyway to do it with EasyBCD but i have just started ticking around with it. if you or find out anyway please post it.

Thanks,

JM