HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE

Anonim

HKEY_CURRENT_USER与HKEY_LOCAL_MACHINE

HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE是Windows注册表中的两个根密钥,它是自Windows 3.1以来每个Windows操作系统安装的重要组成部分。 Windows注册表包含设备设置,软件选项以及有关计算机,操作系统和其上的应用程序的其他信息。 HKEY_CURRENT_USER和HKEY_LOCAL_MACHINE之间的主要区别在于它们的含义。 HKEY_LOCAL_MACHINE保存与计算机整体相关的信息,而HKEY_CURRENT_USER包含特定于用户的信息。因此,HKEY_LOCAL_MACHINE只有一个副本,而HKEY_CURRENT_USER的副本有多个不同的值。

如果用户决定编辑HKEY_CURRENT_USER中的注册表项,他将只更改自己的设置。但如果他更改HKEY_LOCAL_MACHINE中的条目,他将更改使用该计算机的每个人的设置。一个很好的例子就是安装一个新软件。许多软件询问安装是仅针对当前用户还是针对每个人。仅选择当前用户将导致在HKEY_CURRENT_USER中进行输入,而选择每个人都会将条目放在HKEY_LOCAL_MACHINE中。显然,选择前者意味着只有安装了软件的用户才能使用它,而后一个选项可以让每个人都看到并使用该软件。

HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER之间的另一个关键区别是谁可以编辑它。前者可以由任何有权访问注册表的用户编辑,而后者只能由个人用户编辑。您无法登录到一个帐户并编辑另一个帐户的HKEY_CURRENT_USER条目。

最后,还有加载注册表项的时间问题。在启动操作系统期间加载HKEY_LOCAL_MACHINE。相比之下,HKEY_CURRENT_USER仅在用户登录到他的帐户后加载,这是非常合理的,因为操作系统不知道它将加载哪个HKEY_CURRENT_USER。如果用户未登录特定帐户或登录来宾帐户,则将加载默认的HKEY_CURRENT_USER设置。对于新用户,HKEY_CURRENT_USER条目也与默认值相同。

摘要:

1.HKEY_CURRENT_USER仅适用于一个用户,而HKEY_LOCAL_MACHINE适用于所有用户 2.HKEY_LOCAL_MACHINE始终可用,而特定用户的HKEY_CURRENT_USER仅在登录时可用 3.HKEY_LOCAL_MACHINE在启动时加载,而HKEY_CURRENT_USER在登录时加载