【发布时间】:2013-06-12 16:25:56
【问题描述】:
在 Windows Vista+ 上,BCD 启动数据存储在HKEY_LOCAL_MACHINE\BCD00000000 下的注册表中。 BCDEDIT 命令行工具只是以可读的方式呈现这些数据。
因此,理论上,任何以管理员身份运行的用户编程应用程序都应该能够以与 BCDEDIT.EXE 相同的方式编辑该存储,对吗?
DWORD result = RegOpenKeyEx(HKEY_LOCAL_MACHINE, TEXT("BCD00000000\\Objects\\..."), 0, KEY_SET_VALUE, &hKey);
然而,当我运行这个(在管理员帐户下)时,结果的值是 0x5(访问被拒绝)。
我在这里遗漏了什么,还是没有办法编写一个无需调用 BCDEDIT 即可以编程方式编辑 BCD 数据的应用程序?
【问题讨论】:
标签: windows permissions registry bootloader bcdedit