На Windows XP перестали запускаться утилиты ping, ipconfig и другие утилиты, входящие в состав Windows (находятся в папке c:\Windows\system32). Причем с утилитами все в порядке, они находятся там, где положено (в папке c:\Windows\system32), и могут нормально запускаться, если указать для запуска полный путь, либо сделать текущим каталог, где они находятся (папку c:\Windows\system32). В переменной окружения Path путь до каталога c:\Windows\system32 нормально указан.
Проблема скорее всего в том, что переменная окружения Path слишком разрослась, и в ней появились несуществующие пути. Я устранил ошибку, когда вручную почистил Path, удалив из неё все не существующие пути на диске. Path уменьшилась, и утилиты Windows стали нормально запускаться.
[Памятка по редактированию %PATH%]
Переменные окружения редактируются через оснастку Свойства системы (Мой компьютер -> Свойства), закладка Дополнительно, кнопка Переменные среды. Также для редактирования Path и системных переменных можете воспользоваться утилитами [1, 2, 3].
Переменная PATH составляется из настроек пользователя (Переменные среды пользователя ...) и настроек системы (Системные переменные). Имеет смысл проверить содержимое переменной Path в обоих этих разделах.
Переменная Path хранит в себе несколько путей, которые отделяются друг от друга точкой с запятой. Ниже пример моей глючной конфигурации, которая не давала запускаться системным утилитам (содержимое системной переменной Path). Для наглядности я разделил Path на отдельные строки, по одному пути в каждой строке. В реальности все пути в переменной Path находятся в одной строке. Красным шрифтом помечены пути, которые я удалил для исправления ошибки.
c:\STM\STMCR1.6.0\bin;
C:\Program Files\PC Connectivity Solution\;
c:\Program Files\Atmel\AVR Tools\AVR Toolchain\bin;
%SystemRoot%\system32;%SystemRoot%;
%SystemRoot%\system32\WBEM;
C:\Xilinx\11.1\ChipScope\bin\nt;
C:\Xilinx\11.1\common\bin\nt;
C:\Xilinx\11.1\common\lib\nt;
%XILINX_EDK%\bin\nt;
%XILINX_EDK%\lib\nt;
%XILINX_PLANAHEAD%\bin;
%XILINX%\bin\nt;
%XILINX%\lib\nt;
c:\WinAVR-20100110\bin;
c:\WinAVR-20100110\utils\bin;
c:\devkitPro\msys\bin;
C:\Program Files\ATI Technologies\ATI.ACE\Core-Static;
C:\WINDOWS\system32\WindowsPowerShell\v1.0;
C:\Program Files\TortoiseHg\;
C:\Program Files\TortoiseSVN\bin;
C:\Program Files\IVI Foundation\IVI\bin;
C:\Program Files\IVI Foundation\VISA\WinNT\Bin\;
C:\PROGRA~1\IVIFOU~1\VISA\WinNT\Bin;
C:\Program Files\Common Files\Adobe\AGL;
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\100\DTS\Binn\;
C:\Program Files\OpenVPN\bin;
%ANT_HOME%\bin;
%ANDROID_SDK%\tools;
%ANDROID_SDK%\platform-tools;
%ANDROID_NDK%;
c:\Program Files\Java\jdk8u5\bin;
C:\Program Files\TortoiseGit\bin;
C:\Program Files\IVI Foundation\VISA\WinNT\Bin;
%CDSROOT%\tools\pcb\bin;
%CDSROOT%\tools\bin;
%CDSROOT%\tools\libutil\bin;
%CDSROOT%\tools\fet\bin;
%CDSROOT%\tools\specctra\bin;
%CDSROOT%\tools\pspice;
%CDSROOT%\tools\capture;
%CDSROOT%\openaccess\bin\win32\opt;
Проверьте также и другие переменные, которые подставляются в пути с помощью %имя_переменной%. Обратите внимание, что таким образом подставляются в Path пути %SystemRoot%\system32, %ANT_HOME%\bin, %ANDROID_SDK%\tools и другие. В моем случае была ошибка в том, что не существовал путь на диске, на которую указывала переменная %CDSROOT%, поэтому я удалил все пути с этой переменной, и также удалил эту ошибочную переменную.
После редактирования Path не забывайте перезапускать командную строку, потому что переменные окружения считываются заново в момент запуска интерпретатора команд cmd.exe.
Во избежание ошибок советую сделать копию переменной окружения Path в текстовый файл перед началом её реального редактирования. Кстати, редактировать текст переменной удобнее именно в обычном текстовом редакторе (наподобие notepad или notepad2), а не в стандартной остнастке, которую предлагает Windows.
[Ссылки]
1. Windows Environment Variables Manager site:sourceforge.net или site:env-man.blogspot.ru. 2. PATH Manager site:sourceforge.net. 3. Windows Environment Variables Editor site:eveditor.com. |