Udostępnij przez


Przykład wyzwalacza tygodniowego (XML)

Kod XML w tym przykładzie definiuje zadanie uruchamiające Notatnika co tydzień.

Aby zarejestrować zadanie zdefiniowane w formacie XML, możesz użyć funkcji ITaskFolder::RegisterTask (TaskFolder.RegisterTask do tworzenia skryptów) lub narzędzia wiersza polecenia Schtasks.exe. Jeśli używasz narzędzia Schtasks.exe (znajdującego się w katalogu C:\Windows\System32), możesz użyć następującego polecenia, aby zarejestrować zadanie: schtasks /create /XML<ścieżkę do pliku XML zawierającego definicję zadania>/tn<nazwy zadania>.

Aby zdefiniować zadanie uruchamiania Notatnika co drugi tydzień w poniedziałek o 8:00

W poniższym przykładzie XML pokazano, jak zdefiniować zadanie z pojedynczą akcją wykonywania (począwszy Od Notatnika), pojedynczym wyzwalaczem kalendarza (uruchamianym co drugi tydzień w poniedziałek o godzinie 8:00) oraz kilkoma innymi ustawieniami zadań, które mają wpływ na sposób obsługi zadania przez harmonogram zadań.

<?xml version="1.0" ?>
<!--
This sample schedules a task to start on a bi-weekly basis.
-->
<Task xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
    <RegistrationInfo>
        <Date>2005-05-01T09:00:00</Date>
        <Author>AuthorName</Author>
        <Version>1.0.0</Version>
        <Description>Notepad starts every other week on Monday at 8:00am.</Description>
    </RegistrationInfo>
    <Triggers>
        <CalendarTrigger>
            <StartBoundary>2005-05-02T08:00:00</StartBoundary>
            <EndBoundary>2006-01-01T00:00:00</EndBoundary>
            <ScheduleByWeek>
                <WeeksInterval>2</WeeksInterval>
                <DaysOfWeek>
                    <Monday/>
                </DaysOfWeek>
            </ScheduleByWeek>
        </CalendarTrigger>
    </Triggers>
    <Principals>
        <Principal>
            <UserId>Administrator</UserId>
            <LogonType>InteractiveToken</LogonType>
        </Principal>
    </Principals>
    <Settings>
        <Enabled>true</Enabled>
        <AllowStartOnDemand>true</AllowStartOnDemand>
        <AllowHardTerminate>true</AllowHardTerminate>
    </Settings>
    <Actions>
        <Exec>
            <Command>notepad.exe</Command>
        </Exec>
    </Actions>
</Task>

Elementy schematu taskScheduler

Poniżej przedstawiono kilka ważnych elementów, które należy wziąć pod uwagę podczas korzystania z tego przykładu.

  • RegistrationInfo

    Zawiera informacje o rejestracji dotyczące zadania.

  • wyzwalacze

    Definiuje wyzwalacz, który uruchamia zadanie.

  • CalendarTrigger

    Definiuje wyzwalacz kalendarza tygodniowego. W takim przypadku są używane tylko cztery elementy podrzędne: granice rozpoczęcia i zakończenia, które określają, kiedy wyzwalacz jest aktywowany i dezaktywowany, harmonogram tygodniowy i dni tygodnia, w których zadanie zostanie uruchomione. Element StartBoundary jest wymaganym elementem wyzwalaczy kalendarza.

  • ScheduleByWeek

    Definiuje harmonogram tygodniowy. W takim przypadku interwał jest ustawiany na wykonywanie zadania co drugi tydzień w poniedziałek.

  • podmiotu zabezpieczeń

    Definiuje kontekst zabezpieczeń, w ramach którego jest uruchamiane zadanie.

  • ustawień

    Definiuje ustawienia zadań używane przez harmonogram zadań do wykonania zadania.

  • Actions

    Definiuje akcje wykonywane przez zadanie (w tym przypadku jest uruchomiony Notatnik).

korzystanie z harmonogramu zadań