我在 Windows 10 上乱搞,删除了%WINDIR%
系统环境变量,然后重启了电脑。现在,很多东西都坏了,包括提升提示和系统属性面板。我该如何恢复变量?
答案1
如果您可以打开 Regedit:
- 去
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
。 - 右键单击值列表,选择新建 → 可扩展字符串值,输入
windir
作为名称和%SystemRoot%
值。
如果您仍然可以打开命令提示符:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v windir /t REG_EXPAND_SZ /d ^%SystemRoot^%
否则:
- 启动 Windows 安装 USB。
- 按 Shift+F10 打开命令提示符。
- 跑步
regedit
。 - 选择
HKEY_LOCAL_MACHINE
分支。 - 选择文件 → 加载 Hive…
Windows\System32\config\SYSTEM
并从主系统磁盘(不是安装 USB 磁盘)打开文件。输入一个临时名称,例如temp
。 - 打开
HKEY_LOCAL_MACHINE
新加载的temp
密钥(使用您指定的名称),然后下降到ControlSet001\Control\Session Manager\Environment
。 - 右键单击值列表,选择新建 → 可扩展字符串值,输入
windir
作为名称和%SystemRoot%
值。 - 返回
HKEY_LOCAL_MACHINE\temp
并选择文件 → 卸载 Hive。 - 关闭注册表编辑器。
- 跑步
wpeutil reboot
。
替代步骤:
- 跑步
reg load HKLM\temp C:\Windows\System32\config\SYSTEM
- 跑步
reg add "HKLM\temp\ControlSet001\Control\Session Manager\Environment" /v windir /t REG_EXPAND_SZ /d ^%SystemRoot^%
- 跑步
reg unload HKLM\temp
。 - 跑步
wpeutil reboot
。
答案2
您仍然可以使用普通命令提示符,因为它将在%USERPROFILE%
而不是
中打开%WINDIR%\System32
。
在命令提示符中输入以下命令
setx windir "%SYSTEMROOT%"
此命令恢复您删除的 WINDIR 变量。
现在重新启动计算机,一切恢复正常。
如果由于某种原因你的 SYSTEMROOT 参数不正确,但你知道你的 windows 文件夹的位置,例如 C:\WINDOWS,你也可以输入setx windir "C:\WINDOWS"