Ответ 1
Просто добавьте записи task scheduler command line
в [Run]
вашего script. Записи в этом разделе выполняются после успешной установки программы.
У меня есть небольшое консольное приложение, которое устанавливается вдоль моего (большего) приложения. Настройка создана с помощью Inno Setup, которая работает очень хорошо.
Я хочу, чтобы Inno Setup добавила одну или несколько задач в планировщик окон (который запускает консольное приложение). Есть ли способ сделать это?
Просто добавьте записи task scheduler command line
в [Run]
вашего script. Записи в этом разделе выполняются после успешной установки программы.
Чтобы дать более конкретный пример, чем ответ @TLama:
Например, чтобы запланировать задачу для запуска приложения с некоторым параметром каждый час, используйте:
[Run]
Filename: "schtasks"; \
Parameters: "/Create /F /SC HOURLY /TN ""My Task"" /TR ""'{app}\MyProg.exe' par1"""; \
Flags: runhidden
Замечания:
/F
чтобы перезаписать любую выходящую задачу с тем же именем (важно для переустановок/обновлений). См. Полную документацию по команде schtasks.exe
и разделу [Run]
.
Если вы хотите отладить создание неработающей задачи, запустите schtasks
с помощью cmd.exe/K
(и, конечно же, уберите флаг runhidden
):
[Run]
Filename: "{cmd}"; \
Parameters: "/K schtasks /F /Create /SC HOURLY /TN ""My Task"" /TR ""'{app}\MyProg.exe' par1""";
Таким образом, консольное окно с сообщением об ошибке сохраняется.
См. Отладка нерабочего пакетного файла или команды, выполненной из установщика Inno Setup.