Было время, когда нужно было добавить в
PATH
переменную среды папку дляNotePad++
статического программного приложения, чтобы запустить его из диалогового окна «Выполнить». Эта папка:Было время, когда
start notepad++
для его запуска приходилось вводить команду только в диалоговом окне «Выполнить», хотя путь к нему отсутствовал вPATH
переменной среды.Теперь достаточно просто ввести
notepad++
в диалоговом окне «Выполнить», чтобы запустить его, хотя путь к нему отсутствует вPATH
переменной среды:Как это происходит?
решение1
Похоже , что и диалоговое окно «Выполнить», и start
команда в Cmd используют одну и ту же функцию ShellExecute(), которая имеет дополнительный список расположений:«Пути приложений»ключ реестра.
Вместо того, чтобы добавлять себя в %PATH%, программы могут регистрировать расположение отдельных исполняемых файлов по адресу:
HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths
HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths
Это дает преимущества, поскольку не требует перезапуска всех приложений, которые все еще имеют старое значение %PATH%, и не загромождает путь внутренними исполняемыми файлами.
См. MicrosoftдокументацияБольше подробностей.