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


структура TASK_TRIGGER (mstask.h)

Определяет время выполнения запланированного рабочего элемента.

Синтаксис

typedef struct _TASK_TRIGGER {
  WORD               cbTriggerSize;
  WORD               Reserved1;
  WORD               wBeginYear;
  WORD               wBeginMonth;
  WORD               wBeginDay;
  WORD               wEndYear;
  WORD               wEndMonth;
  WORD               wEndDay;
  WORD               wStartHour;
  WORD               wStartMinute;
  DWORD              MinutesDuration;
  DWORD              MinutesInterval;
  DWORD              rgFlags;
  TASK_TRIGGER_TYPE  TriggerType;
  TRIGGER_TYPE_UNION Type;
  WORD               Reserved2;
  WORD               wRandomMinutesInterval;
} TASK_TRIGGER, *PTASK_TRIGGER;

Члены

cbTriggerSize

Размер этой структуры в байтах.

Reserved1

Только для внутреннего использования; это значение должно быть равно нулю.

wBeginYear

Год активации триггера задачи. Это значение должно быть четыре цифры (1997, а не 97). При задании задачи необходимо указать начальный год.

wBeginMonth

Месяц года (указанный в элементе wBeginYear ), активируемый триггером задачи. При задании задачи необходимо указать начальный месяц.

wBeginDay

День месяца (указанный в элементе wBeginMonth ), активируемый триггером задачи. При задании задачи необходимо указать начальный день.

wEndYear

Год деактивации триггера задачи. Это значение должно быть четыре цифры (1997, а не 97).

wEndMonth

Месяц года (указанный в элементе wEndYear ), который триггер задачи деактивирует.

wEndDay

День месяца (указанный в элементе wEndMonth ), который триггер задачи отключает.

wStartHour

Час дня выполнения задачи. Это значение равно 24-часовым часам; часы идут от 00 до 23.

wStartMinute

Минута часа (указанного в члене wStartHour ), в котором выполняется задача.

MinutesDuration

Через несколько минут после запуска задачи триггер останется активным. Указанное здесь количество минут должно быть больше или равно параметру MinutesInterval .

Например, если вы запускаете задачу в 8:00 и хотите повторно запустить задачу до 17:00, длительность будет составлять 540 минут.

MinutesInterval

Количество минут между последовательными выполнениями задач. Это число подсчитывается с начала предыдущей запланированной задачи. Указанное здесь количество минут должно быть меньше параметра MinutesDuration .

Например, чтобы выполнять задачу каждый час с 8:00 до 17:00, задайте для этого поля значение 60.

rgFlags

Значение, описывающее поведение триггера. Это значение представляет собой сочетание следующих флагов.

TASK_TRIGGER_FLAG_HAS_END_DATE

Допустимая дата окончания структуры триггера. Если этот флаг не установлен, данные даты окончания игнорируются, и триггер будет действовать неограниченное время.

TASK_TRIGGER_FLAG_KILL_AT_DURATION_END

Задача будет завершена в конце времени существования активного триггера. В конце срока планировщик задач отправляет сообщение WM_CLOSE связанному приложению. Если WM_CLOSE не удается отправить (например, приложение не имеет окон) или приложение не завершило работу в течение трех минут после получения WM_CLOSE, планировщик задач завершает работу приложения с помощью TerminateProcess.

TASK_TRIGGER_FLAG_DISABLED

Триггер задачи неактивен.

TriggerType

Перечисленное значение TASK_TRIGGER_TYPE, указывающее тип триггера. Этот элемент используется с Типом. Указанный здесь тип триггера определяет, какие поля TRIGGER_TYPE_UNION , указанные в элементе Type , будут использоваться. Тип триггера зависит от того, когда триггер будет выполнять задачу.

Type

Структура TRIGGER_TYPE_UNION , указывающая сведения о триггере. Обратите внимание, что член TriggerType определяет, какие поля TRIGGER_TYPE_UNION объединения будут использоваться.

Reserved2

Только для внутреннего использования; это значение должно быть равно нулю.

wRandomMinutesInterval

В настоящий момент не используется.

Комментарии

Это время может включать время начала, время окончания, длительность и флаги изменения для рабочего элемента. Обратите внимание, что при установке триггера необходимо задать месяц и год начала дня.

Примечание Для запланированного рабочего элемента может быть определен один или несколько триггеров. Время запуска рабочего элемента — это объединение всех триггеров, определенных для этого элемента.
 

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Верхняя часть mstask.h

См. также раздел

IScheduledWorkItem::CreateTrigger

ITaskTrigger::GetTrigger

ITaskTrigger::SetTrigger

TASK_TRIGGER_TYPE

TRIGGER_TYPE_UNION

Интерфейсы триггера планировщика задач 2.0