如何让任务计划程序启动触发器延迟

如何让任务计划程序启动触发器延迟

系统是Windows 2008 R2

我有一个任务计划程序,其中有一个触发器在系统启动时运行,并将延迟设置为 20 分钟,但该任务在系统启动时立即运行,并忽略了 20 分钟的延迟。还有其他触发器,但引导触发器因忽略延迟而出现问题。

导出任务的触发器部分如下。

  <Triggers>
<CalendarTrigger>
  <StartBoundary>2009-12-29T08:35:00</StartBoundary>
  <Enabled>false</Enabled>
  <ScheduleByWeek>
    <DaysOfWeek>
      <Monday />
      <Tuesday />
      <Wednesday />
      <Thursday />
      <Friday />
    </DaysOfWeek>
    <WeeksInterval>1</WeeksInterval>
  </ScheduleByWeek>
</CalendarTrigger>
<BootTrigger>
  <Enabled>true</Enabled>
  <Delay>PT20M</Delay>
</BootTrigger>
<CalendarTrigger>
  <StartBoundary>2012-07-29T18:07:16</StartBoundary>
  <Enabled>true</Enabled>
  <ScheduleByWeek>
    <DaysOfWeek>
      <Monday />
      <Tuesday />
      <Wednesday />
      <Thursday />
      <Friday />
    </DaysOfWeek>
    <WeeksInterval>1</WeeksInterval>
  </ScheduleByWeek>
</CalendarTrigger>

答案1

我添加了一个只有一个触发器的新任务 - 带延迟的 BootTrigger。这次延迟确实起作用了。因此,如果存在多个触发器,则肯定存在一些错误,导致启动触发器延迟不起作用。

答案2

我能够使用多个触发器来延迟。我不得不改变“配置为:”在第一个选项卡上设置为“Windows 7/Windows Server 8 R2”

任务 xml 文件的任务选项卡现在显示<Task version="1.3"而不是<Task version="1.1"。版本 1.3 中的设置比版本 1.1 中的设置多得多。

在我的例子中,我在任何用户登录后添加了延迟。我尝试手动将1.1 版<Delay>PT15M</Delay>下的延迟标签添加<LogonTrigger>到要导入任务计划程序的任务 xml 文件中,但任务计划程序返回错误,提示设置无效。但对于 1.3 版,它可以工作。

相关内容