Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/164.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 任务计划程序:从当前时刻开始每小时运行一次任务_C++_Windows_Winapi_Scheduled Tasks - Fatal编程技术网

C++ 任务计划程序:从当前时刻开始每小时运行一次任务

C++ 任务计划程序:从当前时刻开始每小时运行一次任务,c++,windows,winapi,scheduled-tasks,C++,Windows,Winapi,Scheduled Tasks,问题是:我需要创建一个计划任务,该任务从安装开始每小时执行一次。然后,它必须在用户每次登录时启动 到目前为止还不错。使用我创建了一个基于ILogonTrigger的任务,我将重复设置为1小时,这没关系。在重新登录或重新启动任务完美启动后-这就是我所需要的。但我不希望用户立即重新启动或重新登录 所以问题是:如何从现在开始倒计时?我知道我可以强制运行已注册的任务-但这正是我想要避免的,我想在一小时后启动它,然后一次又一次,等等 我现在可以想象的一个解决方案是不重复地创建登录任务,并延迟启动它。每次执

问题是:我需要创建一个计划任务,该任务从安装开始每小时执行一次。然后,它必须在用户每次登录时启动

到目前为止还不错。使用我创建了一个基于ILogonTrigger的任务,我将重复设置为1小时,这没关系。在重新登录或重新启动任务完美启动后-这就是我所需要的。但我不希望用户立即重新启动或重新登录

所以问题是:如何从现在开始倒计时?我知道我可以强制运行已注册的任务-但这正是我想要避免的,我想在一小时后启动它,然后一次又一次,等等

我现在可以想象的一个解决方案是不重复地创建登录任务,并延迟启动它。每次执行时,都会延迟运行它。但这对我来说是个糟糕的解决方案。也许我错过了什么

哦。所有这些都必须与任务计划程序的第一个版本兼容(即设置了Task_COMPATIBILITY_V1设置)。但是没有它我也能活下去:)


谢谢你的建议。

好的,我已经设法自己做了几乎我想做的事情

对于TaskScheduler2.0,可以通过为Task分配另一个触发器来完成:IRegistrationTask。如果将设置TASK_COMPATIBILITY_V1设置,则不会分配触发器。 对于Windows XP,我刚刚创建了IDailyTrigger,开始边界设置为00:05。这不完全是我需要的,但它工作得很好