Windows Vista – BCD (Boot Configuration Data)

Windows Vista – BCD (Boot Configuration Data)

Boot.ini really will be the last of the .ini files.  In Vista, Boot.ini is superseded by the BCD (Boot configuration data).  While the acronym BCD is rather anonymous, Boot Configuration Data is a wonderfully descriptive expression, more importantly, it gives you control of what should happen when Vista starts.

Naturally BCD supports both BIOS and Extensible Firmware Interface (EFI) machines.  However, I cannot help wondering if the new EFI has prompted Microsoft to finally abandon boot.ini in favour of BCD.

Trap: Before launching CMD, right-click CMD and select, RunAs, administrator.  To get a handle on BCD type: bcdedit /? at the command prompt.  This command fires up bcdedit.exe which is stored in the %systemroot%\system32 folder.

Bcdedit is a comprehensive utility with numerous switches, here is the information displayed by the simple switch: bcdedit /enum.

Windows Boot Manager
——————–
Identifier: {bootmgr}
Type: 10100002
Device: partition=C:
Description: Windows Boot Manager
Locale: en-US
Inherit options: {globalsettings}
Boot debugger: No
Default: {current}
Display order: {current}
Timeout: 30

Windows Boot Loader
——————-
Identifier: {current}
Type: 10200003
Device: partition=C:
Path: \Windows\system32\winload.exe
Description: Microsoft Windows
Locale: en-US
Inherit options: {bootloadersettings}
Boot debugger: No
Windows device: partition=C:
Windows root: \Windows
Resume application: {224b014c-a08e-11da-b308-ed83a3b7e795}
No Execute policy: OptIn
No integrity checks: Yes
Kernel debugger: No
EMS enabled in OS: No

 ♦

/enum all /v

With the ‘all’ and the verbose (/v) switches you can retrieve hex information about the various parameters for example:

Output from the above command.

Windows Boot Manager
——————–
Identifier: {224b0148-a08e-11da-b308-ed83a3b7e795}
Type: 10100002
Device: partition=C:
Path: \EFI\Microsoft\Boot\bootmgfw.efi
Description: Windows Boot Manager
Locale: en-US
Inherit options: {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
Boot debugger: No
Default: {cbd971bf-b7b8-4885-951a-fa03044f5d71}
Timeout: 30

Windows Boot Manager
——————–
Identifier: {9dea862c-5cdd-4e70-acc1-f32b344d4795}
Type: 10100002
Device: partition=C:
Description: Windows Boot Manager
Locale: en-US
Inherit options: {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
Boot debugger: No
Default: {224b014b-a08e-11da-b308-ed83a3b7e795}
Display order: {224b014b-a08e-11da-b308-ed83a3b7e795}
Timeout: 30

Windows Boot Loader
——————-
Identifier: {224b014b-a08e-11da-b308-ed83a3b7e795}
Type: 10200003
Device: partition=C:
Path: \Windows\system32\winload.exe
Description: Microsoft Windows
Locale: en-US
Inherit options: {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
Boot debugger: No
Windows device: partition=C:
Windows root: \Windows
Resume application: {224b014c-a08e-11da-b308-ed83a3b7e795}
No Execute policy: OptIn
No integrity checks: Yes
Kernel debugger: No
EMS enabled in OS: No
 

Guy Recommends:  A Free Trial of the Network Performance Monitor (NPM)Review of Orion NPM v11.5 v11.5

SolarWinds’ Orion performance monitor will help you discover what’s happening on your network.  This utility will also guide you through troubleshooting; the dashboard will indicate whether the root cause is a broken link, faulty equipment or resource overload.

What I like best is the way NPM suggests solutions to network problems.  Its also has the ability to monitor the health of individual VMware virtual machines.  If you are interested in troubleshooting, and creating network maps, then I recommend that you try NPM now.

Download a free trial of Solarwinds’ Network Performance Monitor

Editing BCD Settings

/timeout

I would like to start without /timeout, it’s the easiest change to understand and to monitor.

Here is an easy change:
bcdedit /timeout 5

To see the effect, re-run plain: bcdedit

/displayorder

The key point with /displayorder is that you can only use particular GUIDs encased in curly brackets.  The knack is to research for GUIDs in sections starting with:

Windows Boot Loader
——————-
identifier {cbd971bf-b7b8-4885-951a-fa03044f5d71}

Tip: You can ‘Mark’ and copy these hex blocks at the command-line.  Click on the tiny icon at the top left of your cmd box.

Trap: The GUIDs must exist, you cannot just make them up.  Moreover they must correspond to real settings as indicated under ‘identifier’.

Example 1:
/displayorder generic syntax {os1} {os2}
/displayorder {current} {cbd971bf-b7b8-4885-951a-fa03044f5d71}

Example 2:
/displayorder {3b1cb4c9-5398-11dd-88aa-a0b620d5ce11} {9f25ee7a-e7b7-11db-94b5-f7e662935912}

I say again, you have to use your GUIDs and not mine; test by re-running the command: bcdedit.  The key point is to synchronize with the rhythm of the syntax,
/displayorder space curly bracket os1 curly bracket space curly bracket os2 curly bracket.

bcdedit /default

Here is the classic switch to control what happens after the timeout expires.

bcdedit /default {GUID}

bcdedit /default {3b1cb4c9-5398-11dd-88aa-a0b620d5ce11}

Note 1: In the above example setting the /default in this way changes the bcd code, as a result my computer now boots into Vista.  Just to remind you that tweaking the default GUID only makes sense if you have a multi-boot machine.

Identifying then Changing the Default Boot Manager

®

I have to say that I am not finding bcdedit easy to use.  Here is an example where you examine the setting for the default boot manager.

bcdedit /enum all /v

Part of the output from the above command.

Windows Boot Manager
——————–
Identifier: {224b0148-a08e-11da-b308-ed83a3b7e795}
Type: 10100002
Device: partition=C:
Path: \EFI\Microsoft\Boot\bootmgfw.efi
Description: Windows Boot Manager
Locale: en-US
Inherit options: {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
Boot debugger: No
Default: {cbd971bf-b7b8-4885-951a-fa03044f5d71}
Timeout: 30

 

Amongst the entries for Windows Boot Manager is:

Default: {cbd971bf-b7b8-4885-951a-fa03044f5d71}   (Meaning Vista)

If you wanted to change it to an XP Boot Manager then type

bcdedit /default {466f5a88-0af2-4f76-9038-095b170dc21c}  (Meaning XP)

To be fair to Vista, perhaps it’s because I am not familiar with these hex numbers that I have difficulty getting in tune with bcdedit.

Summary of Vista BCD

In Windows Vista, BCD and bcdedit replace the boot.ini found in XP and older Windows operating systems. 

See more bcdedit examples here

 

If you like this page then please share it with your friends

 


Configuring Windows Vista Topics:

 

     Vista Tools and Extras

 

   Tweak the Registry ebook

Download Your Tweak the Registry Ebook for only $6.45

This ebook will explain the workings of the registry.  I thoroughly enjoy tweaking the registry, and I want to distill the best of my experiences and pass them on to you.

Each registry tweak has two aims; to solve a specific problem, and to provide general learning points, which help you to master regedit. 

Over 60 pages ebook and PDF format