我刚刚弄乱了我的 Windows 7 Enterprise 64 位。
我尝试安装 CMake - 在安装过程中出现一条错误消息,提示无法设置路径变量,因为它太长了(我无法重现确切的错误消息,因为安装程序现在无法再启动)。
所以 - 我接下来要做的是打开控制面板->系统和安全->系统->高级系统设置->环境变量
并且我手动将 cmake bin 文件夹添加到 PATH 系统变量的末尾并保存。
但是现在什么都不起作用了。如果我再次尝试打开“高级系统设置”,就会出现错误
C:\Windows\system32\system32\systempropertiesadvanced.exe
The filename or extension is too long.
如果我尝试打开 regedit
C:\Windows\regedit.exe
The filename or extension is too long.
我仍然可以打开 cmd 提示符,但无法提升权限。如果我尝试以管理员身份启动 cmd,我会得到同样的错误。
我不想重启电脑,因为我认为它在当前状态下无法启动。我不知道如何将我的 Path 变量改回之前的状态
//编辑:
我现在更清楚我做错了什么。
除了扩展路径变量之外,我还设置了一个新的系统环境变量
OPENCV_ROOT
但不幸的是,我在复制粘贴时将系统路径放在了剪贴板中。所以,我现在得到的是这样的:
OPENCV_ROOT = .....;%OPENCV_ROOT%\bin;....
路径 = ......;%OPENCV_ROOT%\bin;....
这显然很糟糕。我尝试删除 OPENCV_ROOT 变量,但由于无法启动任何提升权限的应用程序,这似乎是不可能的
帮助?
答案1
我不确定安全模式是否对 PATH 变量有任何作用,但可能值得一试。如果失败,您可以尝试启动 BartPE 或 WinPE,然后以此方式运行 regedit。
一旦启动到 *PE,启动regedit
、单击HKLM
并转到文件 → 加载配置单元。
#include <stdregistrywarning.h>
导航到\WindowsDIR\system32\config
并选择文件“SYSTEM”。您可能首先想要复制此文件。以防万一。为要加载的 Hive 指定一个名称。例如:OfflineSYS
。我说的WindowsDIR
意思是 Windows 安装在笔记本电脑硬盘上的位置 - 而不是 Windows PE 的运行位置。
然后导航至HKLM\OFFLINESYS\CurrentControlSet\Control\Session Manager\Environment
现在找到该REG_SZ
值path
(如果该值太长),然后编辑它以使其更短。
导航回HKLM
,并卸载配置单元。退出regedit
,重新启动进入 Windows 7。
答案2
这样你就可以打开cmd
,然后有一个set
命令可以用来设置变量,尝试将 PATH 和 OPENCV_ROOT 设置为空并在里面cmd
执行C:\Windows\system32\system32\systempropertiesadvanced.exe
。
答案3
您可以使用第三方注册表编辑应用程序,例如调优工具。虽然我不确定它是否对你有用,但你可以尝试一下。
答案4
尝试在正常登录时以管理员身份运行 REGEDIT。在开始菜单搜索框中输入 REGEDIT。REGEDIT 出现在列表顶部,按住 SHIFT 键并右键单击它,然后选择以管理员身份运行。如果需要,请提供管理员密码。
到这里:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment Path = 编辑此值