What is the BCD file format?
A BCD file (Boot Configuration Data Store) is a Windows Registry hive that replaced the plain-text boot.ini file used by Windows XP and earlier. Introduced with Windows Vista in 2007, it is the authoritative data store that the Windows Boot Manager reads at power-on to determine which operating systems are available, their load parameters, and the default boot entry.
Internally the file is a standard regf-format registry hive containing GUID-keyed boot objects, each with Description and Elements subkeys that encode OS loader paths, partition GUIDs, kernel flags, boot timeout, Safe Mode options, and hardware abstraction parameters. The global boot manager settings live in the well-known object {9dea862c-5cdd-4e70-acc1-f32b344d4795}.
On UEFI systems the active store is at \EFI\Microsoft\Boot\BCD on the EFI System Partition. On legacy MBR/BIOS systems it sits at \Boot\BCD on the active system partition. The file can be mounted read-only in regedit (File → Load Hive) for inspection, but editing should always be done through BCDEdit.exe or a GUI wrapper such as EasyBCD to avoid hive corruption.
Transactional integrity is maintained through companion log files (BCD.LOG, BCD.LOG1, BCD.LOG2). Corruption produces the 0xc0000034 error - "Boot Configuration Data file is missing or contains errors" - repaired from the Windows Recovery Environment with bootrec /rebuildbcd or bcdboot.
Security & safety
RISK: MEDIUMEditing BCD incorrectly can render Windows unbootable. Always back up before changes: bcdedit /export C:\BCDbackup. Malware (especially bootkits) can modify the BCD store to load malicious boot-time code before the OS; Windows Secure Boot and UEFI firmware integrity checks mitigate this on modern hardware. Do NOT download "BCD repair tools" from unofficial sites - most are scareware.
Format details
in a nutshell- Turbo Pascal Compiled Unit (legacy) - Old Borland Turbo Pascal used .bcd for Binary Coded Decimal unit files - entirely unrelated, pre-1995.
Programs that open BCD files
Technical details
deep spec| File format | Windows Registry hive (`regf` binary format); structurally identical to standard registry hives |
| File signature | `regf` (hex `72 65 67 66`) at byte offset 0 |
| Byte order | Little-endian |
| UEFI path | `\EFI\Microsoft\Boot\BCD` on the EFI System Partition |
| MBR / legacy BIOS path | `\Boot\BCD` on the active system partition |
| Object structure | GUID-keyed registry keys, each with `Description` and `Elements` subkeys |
| Boot manager GUID | `{9dea862c-5cdd-4e70-acc1-f32b344d4795}` - the global boot manager settings object |
| Transactional logs | `BCD.LOG`, `BCD.LOG1`, `BCD.LOG2` ensure atomic write consistency |
| Hive format versions | `regf` versions 1.3-1.6 depending on Windows release |
| Predecessor | Replaced `boot.ini` (plain text, Windows XP / 2003) with a structured binary store |
| Typical file size | 256 KB - 2 MB |
| CLI management tool | `BCDEdit.exe` (built-in); GUI alternative: EasyBCD |
| Corruption symptom | `0xc0000034` - "Boot Configuration Data file is missing or contains errors" |
| Repair method | `bootrec /rebuildbcd` or `bcdboot` from the Windows Recovery Environment |
| Released | 2007 (Windows Vista) |
| Latest version | Windows 11 BCD schema (2021) |
| Specification | learn.microsoft.com |
BCD conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about BCD files.