13

该选项存在于 UI 中,但不存在于命令行中显示的帮助中。

4

2 回答 2

15

您是通过schtasks.exe命令行创建新任务,还是更新现有任务?

在 Vista 上,schtasks.exe可以/xml同时选择/create/query. 使用此任务的 XML 编码,您可以看到WakeToRun可以设置节点以将计算机从睡眠状态唤醒以运行任务:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.2" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    ...
  </RegistrationInfo>
  <Triggers />
  <Principals>
    ...
  </Principals>
  <Settings>
    ...
    <WakeToRun>true</WakeToRun>
    ...
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>myprogram.exe</Command>
    </Exec>
  </Actions>
</Task>

如果您需要从唤醒计算机的命令行创建任务,您可以将任务的基本信息导出为 XML,修改此 XML 以添加WakeToRun,然后重新导入此 XML 定义。您可以通过以下两种方式执行此操作:

  1. 在任务计划程序 UI 中,选择“唤醒计算机以运行此任务”,右键单击该任务并Export...转到 XML。然后,您可以在另一台机器上重新导入此文件(见下文),然后将设置 Wake-To-Run。或者,

  2. 通过命令行,创建具有基本设置(动作、时间等)的任务。然后,导出 XML,以编程方式添加WakeToRun节点(通过 XSLT 或搜索/替换),然后重新导入此更新的 XML:

    schtasks.exe /create /tn /xml MyTask.xml /f

于 2009-02-03T08:37:14.263 回答
8

在步骤 2 中的命令行;schtasks.exe /create /tn /xml MyTask.xml /f 这可能会引发一个错误,上面写着;无效的语法。缺少强制选项“tn”。

/tn需要一个名字。这应该是

schtasks.exe /create /tn MyTask /xml "C:\MyTask.xml" /f

如果您在名称中有或想要一个空格,您可以使用;

schtasks.exe /create /tn "My Task With Spaces" /xml "C:\My Task With Spaces.xml" /f

希望这可以帮助...

于 2011-08-11T13:08:12.437 回答