访问或重置不同用户/不同系统的已挂载注册表配置单元的权限

访问或重置不同用户/不同系统的已挂载注册表配置单元的权限

我目前只能使用备份系统,直到更换坏掉的主板为止。在此期间,我已将硬盘放入此系统中,以便可以访问文件并继续使用备份系统。幸运的是,我没有文件权限问题(分区为 FAT32)。我遇到的问题与注册表有关。

我需要将我的(旧?正常?)Windows 安装的配置单元中的一些设置导入到我当前使用的配置单元中。系统配置单元(系统、软件等)中的设置很好,但用户配置单元却给我带来了麻烦。

我从其他驱动器复制了 NTUSER.DAT 文件,并使用命令将其挂载reg。大多数键(例如Software)都很好,我可以毫无问题地访问它们,但其中一些(特别是Identities存储 Outlook Express 设置的键)抱怨无法打开。

如果我打开权限对话框,我会收到无法查看当前权限的错误。如果我忽略它并尝试获取密钥及其子项的所有权,我会收到拒绝访问的错误。如果我在此系统上为我的用户帐户添加权限,我会收到错误,但是我可以看到密钥的子项和值。如果我尝试访问子项,我会收到相同的原始错误。如果我对每个子项重复该过程,我可以看到它们的值和子项,依此类推,但这当然会变得非常烦人且耗时(尤其是因为密钥Identities很多子密钥)。

有没有更简单/临时/更正确的方法来转储密钥,以便我可以将其导入到我的备份系统中?

答案1

或者你可以使用执行程序以“System”用户身份启动 regedit。提取文件后,以管理员身份打开命令提示符(如果在 Vista 或 7 上),导航到提取 psexec 的文件夹。使用以下命令以 System 身份启动注册表:

psexec -i -s -d regedit.exe

这将允许您更改任何注册表项而不受任何限制。这将使更改项上的权限变得容易得多。您的方法也有效,但如果不处理预先设定的权限问题,实现这一点会容易得多。

答案2

我最终使用了SUBINACL. (就我而言> subinacl /subkeyreg hkey_users\z\identities /grant=foobar:)

相关内容