运行后台任务在特定的时间- Windows 10应用程序

本文关键字:Windows 应用程序 时间 后台任务 运行 | 更新日期: 2023-09-27 18:09:56

我已经找到了一种每天在特定时间运行后台任务的方法,例如在12:00。

我已经用TimeTrigger注册了BackgroundTask,不幸的是,它在注册后立即启动。

builder.SetTrigger(new TimeTrigger(24 * 60, false));

有没有更简单的方法,然后每小时检查一次,如果这是一天中正确的时间?

运行后台任务在特定的时间- Windows 10应用程序

微软似乎避免应用程序在精确的时间触发,但你可以通过计算从用户注册任务到12:00的分钟数来接近,然后从那里重新订阅另一个任务,设置为24*60。我不确定微软是否允许在后台任务中这样做,但值得一试。

计算任务

到午夜的分钟数的示例
var tommorowMidnight = DateTime.Today.AddDays(1);
var timeTilMidnight = tommorowMidnight - DateTime.Now;
var minutesTilMidnight = (uint)timeTilMidnight.TotalMinutes;
builder.SetTrigger(new TimeTrigger(minutesTilMidnight, true));

我以前使用过这个任务包装器来创建类似的东西,并且它每天都会触发。也许这就是你要找的。

http://taskscheduler.codeplex.com/