%username% 变量在哪里定义?

%username% 变量在哪里定义?

我刚刚在 Windows 7 主机上的 VirtualBox 中安装了 Windows XP。我无法更改用户名环境变量:

USERNAME=Owner

我成功修改了变量,USERDOMAIN因为它是在控制面板中的系统属性中定义的。但是我搞不清楚它在哪里USERNAME定义的。我想知道修改它会不会对变量产生影响:

USERPROFILE=C:\Documents and Settings\Owner

我已经在用户帐户中更改了用户名,但这对系统变量没有影响USERNAME

答案1

环境变量USERNAME在注册表项中定义HKEY_CURRENT_USER\Volatile Environment

但请注意,正如键名所暗示的那样,此键中的变量是易挥发的,这意味着虽然用户可以更改它们,但它们不会保留新值,并且会被系统用派生值覆盖(有点像注册表 RAM)。username环境变量是少数无法设置的变量之一,即使可以设置,它们也不会“保留”,就像在打开新会话时在控制台会话中设置的变量会丢失一样。

它应该用新用户名更新变量。您是否尝试过注销并重新登录或重新启动系统?


你在哪里/如何更改用户名,用户帐户控制面板小程序?用户帐户小程序只改变用户名,而不是实际的用户名. 使用lusrmgr.msc单击可修改用户名,按 F2 键进行更改(然后注销/登录或重新启动)。

如果此方法无效,则在注册表中搜索旧/原始用户名并在那里进行更改。检查以下键:

HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList

相关内容