Как Far Manager находит исполняемый файл Python?
На моем компьютере установлены Far Manager и Python. Каталоги Python не находятся в переменной окружения PATH, поэтому пытаемся запустить python
от cmd
командная строка ничего не делает С другой стороны, я могу успешно запустить python
из командной строки Far Manager. Кто-нибудь может объяснить почему?
1 ответ
Дальний менеджер начинает python
используя ShellExecuteEx в far / execute.cpp.
ShellExecuteEx будет читать путь Python.exe из ключа HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Python.exe
,cmd.exe
будет искать только в переменной PATH ENV. Если путь Python не указан в%PATH%, cmd не найдет его.
Вы можете попробовать то же самое, пытаясь запустить WordPad из Run ( Windows + R) и с консоли CMD. Вы не можете запустить его из CMD, если вы не в правильном каталоге.
Из регистрации приложения: ShellExecuteEx ищет файл в следующих местах:
- Текущий рабочий каталог.
- Только каталог Windows (подкаталоги не ищутся).
- Каталог Windows\System32.
- Каталоги, перечисленные в переменной среды PATH.
- Рекомендуется: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\ Пути к приложениям