-1

Когда я пытаюсь запустить программу командой start без указания пути, для некоторых программ это работает, а для некоторых программ - нет.

Я знаю, что если эти программы находятся в моем списке PATH или в текущем каталоге, мне не нужно вводить путь.

Но команда start работает для некоторых программ, даже если они не находятся в текущем каталоге или в моем списке PATH. Что является причиной этого?

1 ответ1

2

Он ищет раздел реестра App Paths .

Поиск исполняемого файла приложения

Когда функция ShellExecuteEx вызывается с именем исполняемого файла в параметре lpFile , существует несколько мест, где функция ищет файл. Мы рекомендуем зарегистрировать ваше приложение в разделе реестра « App Paths к приложениям» . Это избавляет приложения от необходимости изменять системную переменную среды PATH .

Файл ищется в следующих местах:

  • Текущий рабочий каталог.
  • Только каталог Windows (подкаталоги не ищутся).
  • Каталог Windows\System32 .
  • Каталоги, перечисленные в переменной среды PATH .
  • Рекомендуется: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .