hkey_users/software 的环境变量

hkey_users/software 的环境变量

我的许多软件配置都存储在HKEY_USERS\S-1-5-21-2715202203-4090495733-1863141328-1000\Softwarereg 文件夹中。为了开发便携式应用程序,我想知道环境变量,以便S-1-5-21-2715202203-4090495733-1863141328-1000我可以从任何我想要的计算机动态引用它。
上述顺序对于不同的用户显然是不同的。

我的注册表的屏幕截图

1在此处输入图片描述

答案1

HKEY_USERS 下的键是 SID(安全标识符)。有一些众所周知的 SID 对于所有系统都是相同的。Microsoft 有一个文档描述这些。同一文档指出 S-1-5-21 是非唯一 SID。因此,以 S-1-5-21 开头的 SID 是动态创建的,并且在不同的系统上并不相同。

简而言之:相同的注册表项很可能不会存在于您所拥有的任何其他 PC 上。

如果注册表项是您自己的用户帐户,那么您可以使用 HKEY_CURRENT_USER。HKEY_CURRENT_USER 是 HKEY_USERS\S-1-5-21-... 注册表项的快捷方式。

如果您不确定自己的 SID 是什么,您可以使用 获取whoami /user

答案2

要从旧程序中添加缺失的注册信息,该程序需要将数据保存在 HKEY_USERS//Software/ 键中

您无法创建 .reg 合并文件中包含的新 SID,无论权限如何,您都无法创建新的 SID。

因此,将密钥放入现有的 SID 中将解决问题。

或者只需使用系统注册表编辑器中的 SID 更改注册表文件中的 SID。

例如,您想要合并包含以下注册表文件:[HKEY_USERS\S-1-5-21-1960408961-1202660629-1177238915-1005\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU\exe]

文件中的 SID 是 [S-1-5-21-1960408961-1202660629-1177238915-1005]

而你的系统注册表编辑器中的 SID 则不同

HKEY_USERS\S-1-5-21-1956030832-895603407-332460711-1000\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSavePidlMRU\exe

reg.editor 中的 SID 是 [S-1-5-21-1956030832-895603407-332460711-1000]

因此只需编辑 .reg 文件并用注册表编辑器中的 SID 替换 SID。

希望我说清楚了。

以下是我找到此解决方案的参考:

[[[HKEY_USERS 中的注册表子项

以下是您可能在 HKEY_USERS 配置单元下找到的内容的示例:

HKEY_USERS\.DEFAULT
HKEY_USERS\S-1-5-18
HKEY_USERS\S-1-5-19
HKEY_USERS\S-1-5-20
HKEY_USERS\S-1-5-21-0123456789-012345678-0123456789-1004
HKEY_USERS\S-1-5-21-0123456789-012345678-0123456789-1004_Classes
...

您在 HKEY_USERS 下看到的 SID 肯定会与我上面列出的列表不同。

虽然您可能拥有与内置系统帐户相对应的 .DEFAULT、S-1-5-18、S-1-5-19 和 S-1-5-20,但您的 S-1-5-21-xxx 密钥对于您的计算机来说是唯一的,因为它们对应于 Windows 中的“真实”用户帐户。]]]

谢谢,谨致问候...

相关内容