Когда я обновляю свой PATH, используя либо встроенное диалоговое окно Environment Variables, либо что-то вроде Path Editor , а затем открываю командную строку, изменения в моем PATH не будут регистрироваться в консоли, в зависимости от того, где была командная строка. началось с.
Например, если я редактирую свой PATH, а затем запускаю cmd.exe из меню «Пуск» или ярлыка на рабочем столе, то мой PATH выглядит нормально: он успешно обновлен; Однако, если я начну cmd.exe с ярлыка в любом другом , чем в меню Пуск или на рабочем столе, новый путь не читается , и я получаю старый путь вместо этого. Это очень странно
Я попытался запустить командную строку с помощью ярлыка на рабочем столе, и он работает нормально; Затем я копирую тот же самый ярлык в подпапку на рабочем столе, и у меня возникает проблема отсутствия обновления PATH.
Я понимаю, что это довольно сложно объяснить, поэтому я создал скринкаст, чтобы показать эту проблему в действии .
Вот снимок экрана ярлыка командной строки, показанный на этом скриншоте:
Это на Windows Vista Home Premium SP2.
explorer
процесс обнаружит изменения среды в реестре (к которому относится диалоговое окноrundll32
) и автоматически обновит собственную среду. (По крайней мере, в XP это так.) Вот почему изменения видны при запускеcmd
с ярлыка.