Можно уменьшить чрезмерное количество путей в переменных окружения PATH, просто сохранить всю строку в блокноте, в качестве резервной копии, удалить некоторые и протестировать.
Большинство из них есть, поэтому, если для ярлыка не задан полный путь для "Цели", если "Старт в" не установлен в ярлыке правильно или запуск выполняется странным образом, их программа и ее части и части всегда найденный. Это Failsafe в большинстве ситуаций. Вы все еще хотите полностью протестировать любое использование любой программы, которую вы удалили.
Это также очень полезно для людей, которые вводят команды в CMDprompt, даже без CD компьютер будет сканировать каждое местоположение, пока программа с таким именем не будет найдена и запущена. Или любая другая команда с таким же именем :-)
Этот набор путей WAS (предшественник) ограничивался менее чем 255 (или 260) символами, которые давно изменились на 1024, а затем были исправлены обратно в эпоху server'03 для обработки 2048 и предположительно могли обрабатывать 8096 в некоторых системах, даже давно.
Реальные ограничения, обнаруженные сегодня, с которыми сталкиваются люди, заключаются в CMDprompt, который имеет ограничение на длину командной строки, которая включает в себя расширение переменных и путей.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms682653(v=vs.85).aspx здесь Microsoft говорит:
Msgstr "Максимальный размер пользовательской переменной среды составляет 32 767 символов. Нет технических ограничений на размер блока среды. Однако существуют практические ограничения в зависимости от механизма, используемого для доступа к блоку. Например, пакетный файл не может установить переменную, длина которой превышает максимальную длину командной строки. "
В этом месте ^ они указывают на место в реестре, которое содержит системные пути HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
.
CMDprompt и пакетное ограничение составляют 2048 символов после расширения, и говорят, что это в 4 раза больше, чем для более новых систем (нуждается в цитировании, потому что люди этого не видят)
Также см. Http://support.microsoft.com/kb/830473, где обсуждаются командная строка и длина пакета для более старых систем.
Чтобы убедиться, что записи там правильные, в вики есть следующее:
http://en.wikipedia.org/wiki/Environment_variable
% PATH% Эта переменная содержит разделенный точкой с запятой (не ставьте пробелы между ними) список каталогов, в которых интерпретатор команд будет искать исполняемый файл, соответствующий данной команде.
Переменные среды, которые представляют пути, могут быть вложены в переменную PATH, но только на одном уровне косвенности. Если сама эта переменная среды подпути содержит переменную среды, представляющую путь, PATH не будет правильно расширяться при замене переменной.
Наличие всех дополнительных путей там немного замедляет определенные вещи, потому что тогда он вынужден искать во всех этих местах, прежде чем он сдастся. Использование полных путей при вызове элементов файла всегда будет быстрее, даже при пакетной обработке или использовании CMDprompt.
Использование старых соглашений DOSlike 8.3 - один из способов уменьшить размер, этот пакет https://stackoverflow.com/a/20362922 работает хорошо. не забудьте (снова) сделать резервную копию оригинальной строки. Смотрите также другие возможные решения по этому вопросу.
Вот как выглядит моя, было хуже.
% SystemRoot%\system32;% SystemRoot%;% SystemRoot%\System32\Wbem;% SYSTEMROOT%\System32\WindowsPowerShell\v1.0\; C:\Program Files (x86)\QuickTime\QTSystem\
Я бы быстро выбрал быстрое время, и программы AMD уже добавили туда расширенный путь, бросил его, у Adobee был один, ни один из них не имел значения для стандартных методов ярлыков / значков в графическом интерфейсе. Многие вещи можно удалить, затем протестируйте все функции. Если вы вызываете вещи, вводя приглашение CMD, удаление этих путей не будет работать.