0

长话短说,我正在尝试创建位于二进制 .dat 文件中的两个注册表配置单元的差异。

使用 RegLoadAppKey 安装 hives 后,递归所有键及其值的最佳方法是什么?

我查看了 RegEnumKeyEx,但这只允许我遍历 RegLoadAppKey 返回的根节点的子键,并且(据我所知)不返回任何类型的子键句柄。

另外我使用 RegLoadAppKey 的原因是因为这个迷你应用程序需要能够在没有管理员权限的情况下运行。

4

1 回答 1

2

不要成为湿毯子

来自 RegLoadAppKey 上的 MSDN 文档 http://msdn.microsoft.com/en-us/library/windows/desktop/ms724886(v=vs.85).aspx

与 RegLoadKey 不同,RegLoadAppKey 不会加载 HKEY_LOCAL_MACHINE 或 HKEY_USERS 下的配置单元。相反,hive 加载在一个 无法枚举的特殊根目录下。因此,无法枚举 RegLoadAppKey 当前加载的配置单元

此外,您可能会在尝试避免的某些安全设置方面遇到障碍

配置单元内的所有密钥必须具有相同的安全描述符,否则函数将失败。此安全描述符必须授予调用者由 samDesired 参数指定的访问权限,否则函数将失败。您不能对配置单元内的任何键使用 RegSetKeySecurity 函数。

于 2013-06-19T15:28:04.347 回答