请参阅下面的更新 3 和 4,了解问题的发展情况
我的电脑(Windows 7 x64,联想 Thinkpad T530)在解析 %windir% 时出现问题。启动后,一切正常。一段时间后,电脑突然无法解析 %windir%。
检查环境变量窗口表明它已定义。
检查注册表也显示它也已定义。我实际上删除密钥并重新输入无济于事。
重启后,一切运行良好。有人知道我还可以检查其他什么吗?
更新 1: 经过一番思考,我卸载了在出现此问题时安装的 Konica Minolta Pagebox 驱动程序/程序(请参阅下面的评论)。此问题似乎需要大约 4-24 小时(我从未计时过)才会显现,因此我会在那之后再次更新。
更新 2: 问题仍然存在。我吃完午饭回来,找不到 %windir%。今天早上重启后我做了一个测试,让电脑进入睡眠状态,然后唤醒它。唤醒后 %windir% 仍然被定义。
更新 3:
根据 Daniel 在评论中的说法,我set
在错误前后运行并比较了输出。我注意到的第一件事是,在新启动时,我的%path% 长度超过 2000 个字符。我将其删减至约 375 个字符,并在新的 cmd 窗口中验证它。我重新启动,再次检查路径,它又回到了 2000 多个字符(它与我最初看到的一致)。我再次截断它并再次重新启动,同样的事情发生了。我删除了路径变量并创建了一个新的;同样的事情发生了。此时,我只能得出这样的结论:要么我无法永久更改我的路径,要么路径正在被启动时的一些进程重置。有什么想法吗?
更新 4:
我通过下面建议的注册表方法编辑了我的路径。今天,在运行了一段时间后,我检查了我的路径,它已经从我输入到注册表中的内容中增长了;它现在有一些新条目和很多重复项。唯一的新条目来自 SQL Server 2012。我去注册表中更改它,发现注册表与 的输出不匹配echo %path%
。从“高级属性”选项卡检查环境变量显示了我的路径的第三个版本。
Registry Path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
Command Line path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
C:\Program Files(x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
Environment Variables path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
看起来命令行路径=注册表路径+环境变量路径。我尝试将注册表路径和环境变量路径设置为相同路径,然后重新启动。重新启动后,我的路径现在加倍了,基本上是上述注册表路径的两个背对背副本。
再次,有什么想法吗?
更新 5:与 IT 经理交谈后,他说他在另一台电脑上遇到了类似的问题。两台电脑都有 SSD(似乎是唯一的共同因素)。这可能相关,也可能不相关。
答案1
我遇到了同样的问题,并首先找到了这个问题。但是,这个问题中尚未提到真正的原因/解决方案,但这里提到了:Windows 7 的 PATH 和环境变量已损坏
解决方案摘要:确保您的路径小于 2048 个字符。检查用户变量和系统变量。
答案2
使用 GUI,设置您的%windir%变量内容系统根目录。
至于您的 %path%,您可以使用注册表编辑器解决此问题:
- 启动 Regedit.exe
- 去
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
- 在右侧窗格中,双击该值
Path (REG_EXPAND_SZ)
- 随意更改值并重新启动
答案3
我的联想 TS530 也遇到了同样的问题。安装新程序后,这个问题开始出现,导致我的小路比以前更长,以便安装程序将新内容添加到小路定义。我编辑了小路在雷格特通过将 %SystemRoot% 移动到路径定义的开头。
path = %SystemRoot%\system32;%SystemRoot%;%SystemRoot....
此外,我编辑了环境变量温迪尔从
windir= C:/Windows
到
windir=C:\Windows
这似乎已经解决了问题。(可能是我之前在尝试修复该问题时犯了反斜杠错误。或者安装程序已经更改了它。)
答案4
PATH
正如@Pieter-Jan Busschaert 所提到的,这很可能是由于环境变量损坏或太长。
解决这个问题最简单的方法是下载快速环境编辑器。它会显示您的设置出了什么问题PATH
并让您立即修复它。