Managed .NET support for reading, creating and modifying Windows Boot Configuration Data (BCD) stores in Registry hives.
Part of the LTRData DiscUtils fork. Package IDs use LTRData.DiscUtils; C# namespaces remain DiscUtils.
dotnet add package LTRData.DiscUtils.BootConfig| Capability | Support |
|---|---|
| Read BCD objects and elements | Yes |
| Initialize a BCD store | Yes |
| Create / modify / remove BCD objects | Yes |
Store wraps a DiscUtils.Registry.RegistryKey. It supports application, device and inherited settings objects. Initializing an empty store does not by itself create a bootable Windows configuration. No format registration is required.
using System.IO;
using DiscUtils.BootConfig;
using DiscUtils.Registry;
using DiscUtils.Streams;
using var stream = File.Create("new-bcd.hive");
using var hive = RegistryHive.Create(stream, Ownership.None);
var store = Store.Initialize(hive.Root);
// Populate the objects and elements required by your boot configuration.Repository and capability matrix · Wiki · Migration guide · Format registration and Native AOT