Skip to content

Est. 2011ยทMicrosoft Partner 7033487ยทDelivery under 3 minยทSupport 7 days a week

Your vault is empty.

Free Fix 0xC000000F

Boot manager error 0xC000000F and 0xC0000225 – BCD file is missing

11 min read Updated October 5, 2026 Windows Crashes & Boot Recovery

Fix it now

The firmware found and ran the boot manager; what failed next was loading something it needs. The file name on the error screen decides everything. Microsoft documents three quite different causes behind 0xC0000225, and rebuilding the boot store only addresses one of them.

From the recovery command prompt, after assigning a letter to the system partition

diskpart
list volume
exit
bootrec /scanos
bcdedit /store S:\EFI\Microsoft\Boot\BCD /enum /v
  1. Read the File: line on the error screen before anything else. \Boot\BCD or \EFI\Microsoft\Boot\BCD means the boot store. \Windows\System32\winload.exe means the loader. Anything under \Windows\System32\drivers\ means a driver, and no BCD work will help.
  2. Identify the Windows volume and the small FAT32 system partition with diskpart and list volume. In recovery the Windows volume is rarely C:.
  3. If the screen named the store, confirm the installation is still found with bootrec /scanos, then check that device and osdevice name the real Windows partition in the bcdedit /store ... /enum /v output.
  4. Rewrite the boot files against the correct volume: bcdboot X:\Windows /s S: /f UEFI, where X is the Windows volume and S is the system partition.
  5. If the screen named a driver, this is a file replacement job instead: run chkdsk X: /f, then find a good copy under X:\Windows\WinSxS with dir <name>.sys /s and copy it into X:\Windows\System32\Drivers.

Startup Repair is worth one attempt before any of this. It fixes a fair share of these and costs a few minutes, and it will tell you nothing useful if it fails.

If the machine now starts, you can stop here. If not, the next section explains what the boot manager is looking for and why each of these codes appears.

Why it happens

On a UEFI machine the firmware loads the Windows boot manager from a small FAT32 partition set aside for that purpose. The boot manager reads a store of boot configuration data – a registry-format file on that same partition – which holds one entry per bootable operating system. Each entry records which volume holds the loader and where on that volume it sits. The loader then loads the kernel and the boot-start drivers.

0xC000000F is the boot manager reporting that the application or operating system could not be loaded because a required file is missing or contains errors. Microsoft’s documented causes are the boot configuration data being corrupt, the device and osdevice references in it being missing or unknown, or the binary named on the screen being absent from the disk. Note that the third of those has nothing to do with the store at all.

0xC0000225 is the one that is routinely misread. Microsoft publishes it as the status or object not being found, and lists three causes: a missing or corrupted system binary under \Windows\System32\drivers, corrupted boot configuration data or an incorrectly prepared virtual hard disk, and corruption of the registry hive at \Windows\System32\config\system. Two of the three are not BCD problems, which is why so many readers rebuild the store, watch it succeed, and get the same screen back.

0xC0000034 is narrower: the object name is not found. Where 0xC000000F says a file could not be read, this says the entry being looked up is not in the store. That is the difference between a damaged store and an intact store whose entries point somewhere the volume no longer is – which is why this one so often follows adding a drive, cloning to a new disk or resizing partitions.

The screen names a driver, not the store

You have this one if The File: line points at something under \Windows\System32\drivers\, ending in .sys.

  1. Run chkdsk X: /f against the Windows volume, which is Microsoft’s first documented step here.
  2. Locate a good copy: dir <name>.sys /s from the root of the Windows volume finds the versions held in WinSxS.
  3. Rename the damaged file to <name>.sys.old, then copy the newest WinSxS copy into X:\Windows\System32\Drivers.
  4. Restart. If the same file fails again, treat the disk as suspect rather than repeating the copy.

The boot entry points at a volume that has moved

You have this one if 0xC0000034, or a bcdedit /enum showing device or osdevice as unknown or naming a partition with no Windows folder. Common after adding or removing a drive, cloning, or a firmware change.

  1. Disconnect any drive added just before the failure and try again; that alone often restores the original arrangement.
  2. Confirm the layout with diskpart and list volume.
  3. Either correct the entry in place with bcdedit /store <store> /set {<id>} osdevice partition=X: and the matching device line, or rewrite the files with bcdboot X:\Windows /s S: /f UEFI.
  4. Put Windows Boot Manager back at the top of the firmware boot order.

The boot configuration store is damaged

You have this one if The screen names \Boot\BCD or \EFI\Microsoft\Boot\BCD, often after an unclean shutdown, a failed update, or a third-party boot manager being installed or removed.

  1. Run bootrec /scanos to confirm the Windows installation is still detected.
  2. Back the store out of the way first, as Microsoft documents: bcdedit /export c:\bcdbackup, then attrib c:\boot\bcd -r -s -h, then ren c:\boot\bcd bcd.old.
  3. Run bootrec /rebuildbcd and add the installation it finds.
  4. If it reports no installations, run bcdboot X:\Windows /s S: /f UEFI instead, which writes a fresh store rather than repairing the old one.

On UEFI machines bootrec /fixboot often returns access denied. Rather than trying to force it, use bcdboot, which is the documented way to write boot files for a named Windows installation.

The registry hive behind the boot, not the boot files

You have this one if 0xC0000225 where the screen mentions the system registry file, or where every BCD repair succeeds and the same screen returns.

  1. Copy X:\Windows\System32\config aside in full before touching it.
  2. Try System Restore from Advanced options first; it replaces the hives as part of the restore.
  3. If there is no restore point, Microsoft’s documented repair is to copy the files from config\regback over those in config – which only helps if they are not 0 KB.
  4. Run chkdsk X: /f /r afterwards, because a hive that goes bad again means the disk is the unfixed part.

Full reference

Matching the screen to the work

What the File: line says What it is Where to start
\Boot\BCD or \EFI\Microsoft\Boot\BCD The boot configuration store bootrec /scanos, then rebuild or bcdboot
\Windows\System32\winload.exe or winload.efi The OS loader Check device and osdevice in the store
\Windows\System32\drivers\<name>.sys A boot-start driver chkdsk, then replace the file from WinSxS
\Windows\System32\config\system The SYSTEM registry hive System Restore, then regback
Nothing, or a generic message Unknown bcdedit /enum first; do not start deleting partitions

The UEFI rebuild, step by step

Run this from the recovery command prompt. Pick the disk and the small FAT32 system partition from what list disk and list partition show you, and substitute the real Windows volume letter in the last line.

diskpart
  list disk
  select disk 0
  list partition
  select partition 1
  assign letter=S
  exit
bcdboot C:\Windows /s S: /f UEFI

bcdboot takes the Windows directory as its source, /s as the system partition volume letter and /f as the firmware type – UEFI, BIOS or ALL. Use ALL when you are genuinely unsure which the machine is using; it writes both sets.

Repairing the entries rather than replacing the store

Microsoft’s own documented repair for an unknown device or osdevice is to edit the store rather than rebuild it. On a UEFI machine the store lives at \EFI\Microsoft\Boot\BCD on the system partition; on a legacy installation it is \Boot\BCD.

Command What it does
bcdedit /store <path> /enum /v Lists every entry with full identifiers rather than friendly names
bcdedit /store <path> /set {bootmgr} device partition=S: Points the boot manager entry at the system partition
bcdedit /store <path> /set {<id>} device partition=X: Points the loader entry at the Windows volume
bcdedit /store <path> /set {<id>} osdevice partition=X: Points the operating system device at the Windows volume
bcdedit /store <path> /set {<id>} bootstatuspolicy IgnoreAllFailures Stops the machine looping into automatic repair so you can read the real error

Formatting or recreating the system partition removes the boot files for every operating system on the machine, not only Windows. On a dual boot machine, or one with a vendor recovery entry, write down what is there before you touch it and expect to restore the other entries through their own tools afterwards.

When the disk is not being seen at all

  • If diskpart in recovery lists no disks, no boot repair applies. Return any storage mode setting in firmware to what it was, since a change there prevents the disk being reached.
  • Reseat cables or the drive module and confirm the disk appears in firmware setup.
  • Run the drive vendor’s diagnostic from bootable media if the disk is detected but behaving oddly.
  • Treat a disk no tool can see as a hardware failure and move to data recovery rather than boot repair.
  • 0x00000053, NO_BOOT_DEVICE, sometimes appears alongside. Microsoft publishes only the name for that bug check, and notes it appears very infrequently, so read it as a label rather than as a diagnosis.

After the repair

Check the firmware boot order before you call it done. A machine that boots once from a repair and then goes back to a network boot attempt has correct boot files and a firmware entry that was never updated. Add or promote the Windows Boot Manager entry in firmware setup, and replace the CMOS battery if the machine keeps losing its settings between power cycles.

Every code this article covers

Code What it points at Source
0xC000000F The application or operating system could not be loaded because a required file is missing or contains errors. Documented causes are a corrupt BCD, missing or unknown device and osdevice references, or the named binary being absent Microsoft Learn
0xC0000225 The status or object is not found. Microsoft publishes three causes: a missing or corrupt driver binary, corrupt boot configuration data, and corruption of the SYSTEM registry hive Microsoft Learn
0xC0000034 STATUS_OBJECT_NAME_NOT_FOUND: the object name is not found, so the entry being looked up is absent rather than damaged Microsoft Learn
0x00000053 Microsoft publishes the name NO_BOOT_DEVICE and nothing further; the bug check page carries no description, cause or resolution and notes it appears very infrequently Microsoft Learn

Confirm the fix worked

  1. Start the machine three times from cold and confirm it reaches Windows each time without intervention.
  2. bcdedit /enum from inside Windows shows the default entry naming the correct volume and loader path.
  3. The firmware boot order lists Windows Boot Manager first, with no stale entries left behind.
  4. If a driver file was replaced, sfc /scannow reports no integrity violations.
  5. Create a recovery drive from within Windows, so the next incident is a shorter one.

Questions people ask about this

Will rebuilding the boot files erase my data?

No. bootrec and bcdboot write to the small system partition, not to the volume holding your files. The risk in this procedure is the partition work around it – formatting or recreating a partition is where data is lost, not the boot repair.

Does this need a new Windows licence?

No. This is a boot repair, not a reinstallation, and even if you eventually reinstall, the existing entitlement still covers that machine.

Why did Startup Repair say it could not fix the problem?

It handles common patterns and gives up quickly on anything else, particularly where the disk layout has changed or a second operating system is involved. Its failure is not a verdict on the machine; the manual bootrec and bcdboot route fixes many cases it will not.

I rebuilt the BCD and got the same screen. What did I miss?

Probably the file name. Microsoft lists a missing or corrupt driver binary and a corrupt SYSTEM hive alongside the BCD as causes of 0xC0000225. If the screen names a .sys file or the system registry file, the store was never the problem.

I dual boot with Linux and now only Windows starts.

Rebuilding the Windows boot files makes Windows Boot Manager the firmware’s first entry. The other installation is untouched on disk; restore its boot loader from its own live media and then set the boot order you want.

Related error codes

Was this article helpful?

Your feedback helps us improve our documentation.

Related articles

Free Fix DPC_WATCHDOG_VIOLATION 0x00000133 – PC freezes then blue screens Free Fix MEMORY_MANAGEMENT 0x0000001A and PFN_LIST_CORRUPT 0x0000004E blue screens License Error DRIVER_POWER_STATE_FAILURE 0x0000009F on sleep, hibernate or shutdown Free Fix ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY 0x000000FC and DEP blue screens
โ† Back to Knowledge Base