В Windows Vista + данные загрузки BCD хранятся в реестре под HKEY_LOCAL_MACHINE\BCD00000000
. Инструмент командной строки BCDEDIT просто представляет эти данные читаемым образом.Программно редактировать хранилище BCD в Windows 8?
Итак, теоретически любое запрограммированное пользователем приложение, которое работает как администратор, должно иметь возможность редактировать это хранилище так же, как BCDEDIT.EXE, правильно?
DWORD result = RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("BCD00000000\\Objects\\..."), 0, KEY_SET_VALUE, &hKey);
Тем не менее, когда я запускаю этот (под учетной записью администратора), значение результата 0x5 (доступ запрещен).
Есть ли что-то, что мне не хватает здесь, или просто нет способа написать приложение, которое может программно редактировать данные BCD без вызова BCDEDIT?