【发布时间】:2012-08-28 07:49:38
【问题描述】:
我有一个小型控制台应用程序,它安装在我的(更大的)应用程序中。设置是用 Inno Setup 创建的,效果很好。
我希望 Inno Setup 向 Windows 调度程序(启动控制台应用程序)添加一个或多个任务。有没有办法做到这一点?
【问题讨论】:
标签: inno-setup
我有一个小型控制台应用程序,它安装在我的(更大的)应用程序中。设置是用 Inno Setup 创建的,效果很好。
我希望 Inno Setup 向 Windows 调度程序(启动控制台应用程序)添加一个或多个任务。有没有办法做到这一点?
【问题讨论】:
标签: inno-setup
只需将task scheduler command line 条目添加到脚本的[Run] 部分。该部分中的条目在程序安装成功后执行。
【讨论】:
举一个比@TLama 的回答更具体的例子:
例如,要安排一个任务以每小时使用某个参数运行您的应用程序,请使用:
[Run]
Filename: "schtasks"; \
Parameters: "/Create /F /SC HOURLY /TN ""My Task"" /TR ""'{app}\MyProg.exe' par1"""; \
Flags: runhidden
注意:
/F 开关覆盖任何现有的同名任务(对于重新安装/升级很重要)。查看schtasks.exe command 和[Run] section 的完整文档。
当您要调试非工作任务创建时,请使用 cmd.exe /K 启动 schtasks(当然,删除 runhidden 标志):
[Run]
Filename: "{cmd}"; \
Parameters: "/K schtasks /F /Create /SC HOURLY /TN ""My Task"" /TR ""'{app}\MyProg.exe' par1""";
这样会保留带有错误消息的控制台窗口。
见Debugging non-working batch file or command executed from Inno Setup installer。
【讨论】: