当我使用内置的“环境变量”对话框或类似“ 路径编辑器”的工具更新PATH ,然后打开命令提示符时,对PATH所做的更改将不会在控制台中注册,具体取决于命令提示符所在的位置从开始。
例如,如果我编辑PATH,然后从“开始”菜单或桌面上的快捷方式启动cmd.exe,则我的PATH看起来很好:它已成功更新;但是,如果我从“开始”菜单或“桌面”以外的其他任何地方从快捷方式启动cmd.exe,则不会读取新的PATH,而会得到旧的路径。真奇怪
我试过从桌面上的快捷方式运行命令提示符,它工作正常;然后,我将完全相同的快捷方式复制到桌面上的子文件夹,然后出现非更新的PATH问题。
我意识到这很难解释,因此我创建了一个截屏视频来展示此问题的实际执行情况。
这是该屏幕录像中所示的“命令提示符”快捷方式的屏幕截图:
这是在Windows Vista Home Premium SP2上。
explorer
过程将检测注册表中的环境更改(该对话框属于rundll32
),并自动更新其自身的环境。(至少在XP中是这样做的。)这就是为什么cmd
从快捷方式启动时可以看到更改的原因。