Можно уменьшить избыточное количество путей в переменных окружения 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 говорит:
«Максимальный размер определяемой пользователем переменной среды составляет 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 - один из способов уменьшить размер, этот пакет /programming//a/20362922 работает хорошо. не забудьте (снова) сделать резервную копию оригинальной строки. Смотрите также другие возможные решения по этому вопросу.
Вот как выглядит моя, было хуже.
% SystemRoot% \ system32;% SystemRoot%;% SystemRoot% \ System32 \ Wbem;% SYSTEMROOT% \ System32 \ WindowsPowerShell \ v1.0 \; C: \ Program Files (x86) \ QuickTime \ QTSystem \
Я бы быстро выбрал быстрое время, и программы AMD уже добавили туда расширенный путь, бросил его, у Adobee был один, ни один из них не имел значения для стандартных методов ярлыков / пиктограмм в графическом интерфейсе. Многие вещи можно удалить, затем протестируйте все функции. Если вы вызываете вещи, вводя приглашение CMD, удаление этих путей не будет работать.
PATH
... Что заставляет вас подозревать, что это слишком долго? VS сбрасывает какую-то ошибку? Кроме того, какую версию Windows вы используете?