有关问题的发展方式,请参见下面的更新3和4。
我的电脑(Windows 7 x64,Lenovo Thinkpad T530)解决%windir%问题。启动后,一切正常。稍后,计算机突然无法解析%windir%。
检查环境变量窗口显示它已定义。
检查注册表还显示它也已定义。我实际上已经删除了密钥,然后重新输入却无济于事。
重新启动后,一段时间后一切正常。是否有人对我可以检查的其他事项有任何想法?
更新1: 经过一番思考之后,我已经卸载了大约在此问题开始发生时安装的Konica Minolta Pagebox驱动程序/程序(请参阅下面的评论)。这个问题似乎需要大约4-24个小时(我从未计时),因此我将在此之后再次进行更新。
更新2: 问题仍在发生。我从午餐回来,找不到%windir%。今天早上重启后,我进行了一次测试,将计算机置于睡眠状态,然后将其唤醒。唤醒后仍定义%windir%。
更新3:
根据丹尼尔(Daniel)的评论,我set
在错误前后进行了比较,比较了输出结果。我注意到的第一件事是,在新启动时,我的%path%长为2000+个字符。我将其修剪到〜375个字符,并在新的cmd窗口中对其进行了验证。我重新启动,再次检查了路径,它又回到了2000多个字符(与我最初看到的字符匹配)。我再次将其截断,然后再次重新启动,发生了同样的事情。我删除了path变量并创建了一个新变量;同样的事情发生了。在这一点上,我可以得出的结论是,要么我无法永久更改路径,要么路径在启动时被某些进程重置。有什么想法吗?
更新4:
我通过下面建议的注册表方法编辑了路径。经过一段时间的运行,我今天检查了自己的路径,该路径已从我输入到注册表中的内容开始增长。现在,它有一些新条目和很多重复项。唯一的新条目来自SQL Server2012。我去更改了注册表中的内容,发现注册表与的输出不匹配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\;
看起来命令行路径 = 注册表路径 + 环境变量path。我试图将注册表路径和环境变量路径设置为同一事物,然后重新启动。重新启动后,我的路径现在增加了一倍,基本上是上面注册表路径的两个背对背副本。
再有什么想法?
更新5:与IT经理交谈后,他说他正在另一台计算机上解决类似的问题。两台计算机都具有SSD(似乎是唯一的共同因素)。这可能相关,也可能不相关。
set
分配值windir
并再次重复echo
-看看这是否会为您提供输出。如果可以,那么您的env变量就会有些混乱-如果不能,那么shell和/或echo命令就无法正常工作。