基本上,任务不会在每日或登录重复触发器应该启动时启动。它们也可以手动启动,并在用户登录时启动一次,但每次应该运行时重复都会被推迟,没有任何迹象表明它们曾试图在任务历史记录上运行(已启用)。
我正在使用任务计划程序托管包装器库对于 C#,尽管我如何创建任务似乎没有影响。
我发现在 Windows 7 和 8、x86/x64 和不同语言下完美运行的相同任务配置在 Windows 10 上失败了。
我已经在 2 台不同的虚拟机上进行了测试,使用了不同的 Windows 10 安装文件,但两台虚拟机上都出现了相同的奇怪行为。
我看不出有任何情况会阻止它们运行(例如使用电池或仅在空闲时)。另外,正如我提到的,完全相同的程序能够创建在以前的 Windows 版本上完美执行的计划任务。我甚至从 Windows 7 x64 以 XML 格式导出任务,将其导入到干净的 Windows 10 VM 中,它也有同样的问题。
我正在将任务的 XML 导出粘贴到下面。
谢谢。
<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
<RegistrationInfo>
<Date>2016-06-02T16:32:22.334-08:00</Date>
<Description>Test</Description>
<URI>\TestTask</URI>
</RegistrationInfo>
<Triggers>
<CalendarTrigger>
<Repetition>
<Interval>PT15M</Interval>
<StopAtDurationEnd>false</StopAtDurationEnd>
</Repetition>
<StartBoundary>2016-06-02T16:32:22.334-08:00</StartBoundary>
<Enabled>true</Enabled>
<ScheduleByDay>
<DaysInterval>1</DaysInterval>
</ScheduleByDay>
</CalendarTrigger>
<LogonTrigger>
<Repetition>
<Interval>PT15M</Interval>
<StopAtDurationEnd>false</StopAtDurationEnd>
</Repetition>
<Enabled>true</Enabled>
<Delay>PT1M</Delay>
</LogonTrigger>
</Triggers>
<Principals>
<Principal id="Author">
<UserId>S-1-5-21-2302200855-1744179440-2378765128-1002</UserId>
<LogonType>InteractiveToken</LogonType>
<RunLevel>HighestAvailable</RunLevel>
</Principal>
</Principals>
<Settings>
<MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
<DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
<StopIfGoingOnBatteries>false</StopIfGoingOnBatteries>
<AllowHardTerminate>true</AllowHardTerminate>
<StartWhenAvailable>true</StartWhenAvailable>
<RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
<IdleSettings>
<Duration>PT10M</Duration>
<WaitTimeout>PT1H</WaitTimeout>
<StopOnIdleEnd>true</StopOnIdleEnd>
<RestartOnIdle>false</RestartOnIdle>
</IdleSettings>
<AllowStartOnDemand>true</AllowStartOnDemand>
<Enabled>true</Enabled>
<Hidden>false</Hidden>
<RunOnlyIfIdle>false</RunOnlyIfIdle>
<WakeToRun>false</WakeToRun>
<ExecutionTimeLimit>PT0S</ExecutionTimeLimit>
<Priority>7</Priority>
</Settings>
<Actions Context="Author">
<Exec>
<Command>C:\Users\user\Downloads\TestTask.exe</Command>
</Exec>
</Actions>
</Task>