У меня есть короткий скрипт Python, который установлен в качестве браузера по умолчанию в реестре. Он выберет запуск IE или Firefox на основе URL (некоторые рабочие сайты работают только в IE). Раньше я просто использовал полный путь к установке python, чтобы запустить его, но недавно он сломался из-за изменения места установки python (теперь он связан с файлами нашего проекта, поэтому он может меняться чаще). Путь должен обновляться при его перемещении, поэтому достаточно просто найти питона в зависимости от текущей среды.
Это старая запись команды реестра:
[HKEY_CLASSES_ROOT\RRBrowserChooserURL\ оболочки \ открытая команда \]
@ = "\" C:\\ Python26 \\ python.exe \ "\" C:\\ browser_chooser.pyw \ "\"% 1 \ ""
Вот лучший рабочий вариант, который я придумал до сих пор:
[HKEY_CLASSES_ROOT\RRBrowserChooserURL\ оболочки \ открытая команда \]
@ = "\" C:\\ Windows \\ System32 \\ cmd.exe \ "\"/c \ "\" C:\\ browser_chooser.pyw \ "\"% 1 \ ""
Тем не менее, это кратко всплывает командное окно при открытии ссылки. Я бы хотел этого избежать.
Не переписывая мой сценарий на другом языке и не компилируя его в исполняемый файл, на который я могу ссылаться напрямую, есть ли хороший способ заставить его выполняться без знания пути?