如何在Windows 2003任务计划程序中为任务创建不确定的持续时间
问题描述:
我试图创建任务的时间不确定。在Windows Server 2008上,如果我没有指定持续时间,则认为持续时间是无限的。但是,在Windows Server 2003上,必须指定持续时间(并且等于或大于间隔)。目前,如果要重复很长时间,我只是将任务设置为一年。如何在Windows 2003任务计划程序中为任务创建不确定的持续时间
有没有办法在Windows Server 2003上指定无限期?
if (m_TimeInterval.m_Expire.Year < 2099) //xp and win7 max year is 2099
tTrigger.Repetition.Duration = m_TimeInterval.getDuration();
else if (!newVer) tTrigger.Repetition.Duration = m_TimeInterval.getInterval().Add(TimeSpan.FromDays(365));
tTrigger.Repetition.Interval = m_TimeInterval.getInterval();
tTrigger.Repetition.StopAtDurationEnd = true;
注:
- 我使用任务计划程序API添加这些任务定义。
- 通过使用TimeSpans设置间隔和持续时间。
-
newVer
是假的,因为我有任务计划1.1的工作,而不是1.2或更高 -
tTrigger
的类型是TimeTrigger
答
最后我用2099年1月1日为“无限期”
+1
System.Threading.Timeout.InfiniteTimeSpan –
答
您还可以使用TimeSpan.Zero
这使得任务无限。
继承人短代码片段演示了如何使用它在触发:
Trigger triggerTask = Trigger.CreateTrigger(TaskTriggerType.Time);
triggerTask.StartBoundary = DateTime.Now.AddMinutes(3);
triggerTask.SetRepetition(new TimeSpan(0, 3, 0, 0, 0), TimeSpan.Zero);
怎么样建立一个独立的计划任务,其唯一目的是停止和重新启动你想有一个无限期的任务,有效地重置持续时间? –
这是一种可能的解决方法,谢谢。尽管停止和启动任务不会更新定义年份的原始时间范围,因此它必须删除并重新创建任务。 – PAULDAWG