Решил написать эту программу в очередной раз когда приходилось выполнять консольное приложение куда Я передавал в качестве одного из параметров файл. В программу можно забить несколько консольных приложений и использовать их по необходимости.
Основное окно программы похоже на мишень. Картинку нашёл, бороздя просторы интернета. Рядом с часами отобразится иконка, нажав на которую правой кнопкой мыши можно открыть свойства приложения.
Для запуска процесса необходимо добавить консольные приложения с аргументами в настройках и через Drag'n'Drop бросить файлы на мишень.
Список ранее добавленных консольных приложений находится в ниспадающем списке Command. Путь к выполняемому консольному приложению необходимо вписать или выбрать в поле Application. В поле Arguments необходимо вписать список аргументов передаваемых консольному приложению. Для шаблона используются следующие ключевые слова:
Установив галочку на элементе Disabled команда не будет выполняться. Если все комманды помечены как Disabled, то перед обработкой файлов выводиться список всех комманд с запросом выбора комманд(ы) на выполнение.
Консольное приложение вышедшее с кодом 0, считается завершившимся успешно. Если приложение вышло не с кодом 0, то предлагается выбрать дальнейшее действие: Abort, Retry, Ignore.
Если в программу передана папка, а в шаблоне встречается ключевые слова {InFile} или {InExt}, то процесс будет запущен не к папке, а ко всем файлам в папке и всех подпапках.
Для получения полного пути к файлу необходимо передать 2 ключевых слова: {InPath}{InFile}