c# - 在任务计划程序 2.0 中获取错误代码 -2147216615

标签 c# scheduled-tasks

我正在使用可从 https://taskscheduler.codeplex.com/ 获取的任务计划程序托管库。

我正在尝试使用下面的代码来注册任务。

ts.RootFolder.RegisterTaskDefinition(Curr_Task.Name, Curr_Task.Definition, TaskCreation.CreateOrUpdate, str_username, str_password, TaskLogonType.Password);

但是上面的行抛出了异常。

错误代码: -2147216615 错误消息: (10,8):StartBoundary: 堆栈跟踪如下:-

   at Microsoft.Win32.TaskScheduler.V2Interop.ITaskFolder.RegisterTaskDefinition(String Path, ITaskDefinition pDefinition, Int32 flags, Object UserId, Object password, TaskLogonType LogonType, Object sddl)
   at Microsoft.Win32.TaskScheduler.TaskFolder.RegisterTaskDefinition(String path, TaskDefinition definition, TaskCreation createType, String userId, String password, TaskLogonType logonType, String sddl) in D:\Jeet\Task Schedular API v2.5.22\Source Code\TaskService\TaskFolder.cs:line 424
   at SQScheduler.frmScheduleScenario.SetTriggerinTaskScheduler_New() in D:\Jeet\SQScheduler-branch_5.2\SQScheduler\Parameters\frmScheduleScenario.cs:line 1259

注意:当我第一次调用RegisterTaskDefinition时,它工作正常。但是更新触发器后,再次调用时会抛出异常。

更新:XML如下:-

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2017-04-03T16:15:11.154+05:30</Date>
    <Description>Run parameters</Description>
  </RegistrationInfo>
  <Triggers>
    <TimeTrigger>
      <StartBoundary>2017-04-03T17:10:27.153</StartBoundary>
      <Enabled>true</Enabled>
    </TimeTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>FRSYMTRAX\JDoshi</UserId>
      <LogonType>Password</LogonType>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</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>PT2H30M</ExecutionTimeLimit>
    <Priority>10</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>D:\Program Files (x86)\Symtrax\StarQuery\Debug\SQSRunTime.exe</Command>
      <Arguments>"C:\ProgramData\Symtrax\SQScheduler\My Scenarios\New API Scenarios\Test\Test FTP.xml" "9384bea0-0f56-4423-b6f5-f22f51bf2378"</Arguments>
    </Exec>
  </Actions>
</Task>

请提出使其正常运行所需的更改!!

最佳答案

如果将其转换为十六进制,您收到的错误代码 -2147216615 为 0x80041319,即 listed作为 SCHED_E_MISSINGNODE,表示“任务 XML 缺少必需的元素或属性”。如果没有看到 XML,我无法知道问题是什么,但希望您能够从中解决问题。

关于c# - 在任务计划程序 2.0 中获取错误代码 -2147216615,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43183123/

相关文章:

c# - 实例化后的Unity3D C#面板定位

C# BinaryWriter 写入方法字符串大小

algorithm - 任务/作业调度问题

c - 这些函数在将 kthreads 绑定(bind)到特定核心方面是否等效?

c# - 如何在 EF Core 中实例化 DbContext

c# - 防止使用先前输入的值自动填充文本框

c# - 更改布局文件 mvc4 中的类

python - 任务失败后 Airflow 停止调度 dagruns

Laravel 5 命令调度程序,如何传入选项

java - 我们可以创建一个 Spring ScheduledExecutorTask 池吗?