lz57005

|
Posted: Thu Jan 27, 2022 17:16 Post subject: AltRun - запуск программ по кнопке с ctrl, shift и не только |
|
|
Здравствуйте, собственно сделал утилиту, да так что теперь сложно описать, поэтому опишу процесс создания, что и зачем. Имеем ButtonBar Extended для создания многофункциональных кнопок в TC при кликах с зажатыми модификаторами ctrl, shift. Однако использовать её для запусков сторонних программ, скриптов и прочего не очень удобно, во-первых - приложения с интерфейсов при зажатом модификаторе запускаются не в фокусе, вкладка на панели задач есть, а само окно в фоне, во-вторых - хотелось бы настраивать функционал в самой кнопке, а не в отдельной ini, в-третьих - неплохо бы сохранить возможность drug’n’drop файлов на кнопку.
Вначале пришла идея примитивной утилиты, которую бы можно было использовать в bat файле, она банально передаёт через errorlevel какие модификаторы зажаты, но сразу столкнулся с первой проблемой при зажатом модификаторе окна отличные от консоли запускаются не в фокусе.
Пришлось написать полноценный лаунчер, который отслеживает окно запускаемой программы, т.к. через кнопку можно передать только аргументы запуска, то все настройки передаются именно ими. Ну а раз уж решил запускать программы, то сами нарисовались дополнительные функции и получился весьма странный лаунчер который можно использовать как совместно с TC, так и сам по себе. Из минусов отсутствует непосредственная интеграция с TC и запуск cm_ , em_ - комманд возможно только в связке например с TCFS2.
Итого:
AltRun - это прикладной лаунчер настраиваемый через ключи запуска
Основные функции:
- запуск программ, скриптов, пакетных файлов, открытие файлов в ассоциированных программах (далее цели запуска)
- передача параметров запуска и рабочего каталога запускаемому процессу
- запуск альтернативных целей при удерживании клавиш CTRL, ALT, SHIFT или правой кнопки мыши
- запуск дополнительных программ/скриптов до/после запуска основной цели
- запуск дополнительных программ/скриптов вместо запуска основной цели при её отсутствии или при наличии/отсутствии файла/папки триггера
- запрос прав администратора или подавление этого запроса
- запуск со свёрнутым или развёрнутым окном, скрытие окна
- системная блокировка клавиатуры/мыши на время запуска
- назначение переменных среды запускаемому процессу
- поддержка относительных путей и переменных среды в пути запуска
- запуск различных целей в зависимости от разрядности операционной системы
- автономный режим (возможность указать ключи запуска altrun в файле конфигурации или непосредственно в ресурсах altrun.exe используя любой редактор ресурсов исполняемых файлов)
- сквозная передача параметров запуска запускаемой программе/скрипту в автономном режиме
Вкратце можем получить, например, подобную кнопку:
Команда: altrun.exe
Параметры: --run=cmd.exe --ctrl=cmd.exe --ctrl-admin
Запустит cmd при клике и запустит cmd с запросом прав администратора про Ctrl+Клик
Репозиторий на гитхаб и страница релизов с последней версией и полной справкой
Надеюсь кому-либо пригодится, и заранее извиняюсь если ошибся разделом, т.к. хоть интеграции с TC и нет, но утилита создавалась именно для него изначально. |
|