Daily Trigger Example (XML)

The XML in this example defines a task that starts Notepad at 8:00 AM every day. The example also shows how to set a repetition pattern for the trigger to repeat the task.

To register a task that is defined in XML, you can use either the ITaskFolder::RegisterTask function (TaskFolder.RegisterTask for scripting) or the Schtasks.exe command-line tool. If you use the Schtasks.exe tool (located in the C:\Windows\System32 directory), then you can use the following command to register the task: schtasks /create /XML /tn .

To define a task to start Notepad every day at 8:00 AM

The following XML example shows how to define a task with a single execution action (starting Notepad), a single calendar trigger (starts the task every day at 8:00 AM), and several other task settings that affect how the task is handled by Task Scheduler.

<?xml version="1.0" ?>
This sample schedules a task to start on a daily basis.
<Task xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
        <Description>Notepad starts every day.</Description>

TaskScheduler Schema Elements

Here are some important elements to keep in mind when using this example.

  • RegistrationInfo

    Contains registration information about the task.

  • Triggers

    Defines the trigger that starts the task.

  • CalendarTrigger

    Defines the daily calendar trigger. In this case, four child elements are used: the start and end boundaries that specify when the trigger is activated and deactivated, the daily schedule, and the repetition pattern for the task. The StartBoundary element is a required element for calendar triggers.

  • ScheduleByDay

    Defines the daily schedule. In this case, the interval is set to perform the task every day.

  • Principal: Defines the security context that a task runs under.

  • Settings

    Defines the task settings that Task Scheduler uses to perform the task.

  • Actions

    Defines the actions the task performs (in this case, running Notepad).

Using the Task Scheduler