Поделиться через


Создание триггера

Чтобы создать триггер, необходимо использовать три интерфейса. IScheduledWorkItem предоставляет метод IScheduledWorkItem::CreateTrigger для создания объекта триггера, ITaskTrigger предоставляет метод ITaskTrigger::SetTrigger для задания условий триггера, а интерфейс COM IPersistFile предоставляет метод Save для сохранения нового триггера на диск.

В следующей процедуре описывается создание нового триггера.

Создание нового триггера

  1. Вызовите CoInitialize, чтобы инициализировать библиотеку COM и CoCreateInstance, чтобы получить объект планировщика задач. (В этом примере предполагается, что запущена служба планировщика задач.)
  2. Вызовите ITaskScheduler::Activate, чтобы получить интерфейс объекта задачи ITask. (Обратите внимание, что в этом примере получается задача "Тестовая задача".
  3. Вызовите CreateTrigger для создания объекта триггера. (Обратите внимание, что CreateTrigger наследуется от IScheduledWorkItem.)
  4. Определите структуру TASK_TRIGGER. Обратите внимание, что для членов TASK_TRIGGER wBeginDay, wBeginMonth и wBeginYear должно быть задано допустимое значение дня, месяца и года соответственно.
  5. Вызовите ITaskTrigger::SetTrigger, чтобы задать условия триггера.
  6. Сохраните задачу с новым триггером на диск с помощью IPersistFile::Save. (ИнтерфейсIPersistFile— это стандартный com-интерфейс, поддерживаемый интерфейсом ITask.)
  7. Вызовите и освободите, чтобы освободить все ресурсы. (Обратите внимание, что выпуска является методом IUnknown, унаследованным ITask.)
Для примера кода Смотрите
Создание триггера для существующей задачи пример кода C/C++: создание триггера задачи

 

Примеры планировщика задач версии 1.0