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

内部使用の場合のみ。この値は 0 である必要があります。

wBeginYear

タスク トリガーがアクティブ化される年。 この値は 4 桁にする必要があります (97 ではなく 1997)。 タスクを設定するときは、開始年を指定する必要があります。

wBeginMonth

タスク トリガーがアクティブ化する年の月 ( wBeginYear メンバーで指定)。 タスクを設定するときは、開始月を指定する必要があります。

wBeginDay

タスク トリガーがアクティブ化する月の日 ( wBeginMonth メンバーで指定)。 タスクを設定するときは、開始日を指定する必要があります。

wEndYear

タスクトリガーが非アクティブ化する年。 この値は 4 桁にする必要があります (97 ではなく 1997)。

wEndMonth

タスクが非アクティブ化をトリガーする年の月 ( wEndYear メンバーで指定)。

wEndDay

タスクが非アクティブ化をトリガーする月の日 ( wEndMonth メンバーで指定)。

wStartHour

タスクが実行される時刻。 この値は 24 時間制です。時間は 00 から 23 に行きます。

wStartMinute

タスクが実行される時間 ( wStartHour メンバーで指定) の分。

MinutesDuration

タスクが開始されてからトリガーがアクティブなままになるまでの時間 (分)。 ここで指定する分数は、 MinutesInterval 設定以上である必要があります。

たとえば、午前 8 時にタスクを開始し、午後 5 時までタスクを繰り返し開始する場合、その期間は 540 分になります。

MinutesInterval

連続するタスク実行間の分数。 この数は、前のスケジュールされたタスクの先頭からカウントされます。 ここで指定する分数は、 MinutesDuration 設定より小さくする必要があります。

たとえば、午前 8 時から午後 5 時まで 1 時間ごとにタスクを実行するには、このフィールドを 60 に設定します。

rgFlags

トリガーの動作を表す値。 この値は、次のフラグの組み合わせです。

TASK_TRIGGER_FLAG_HAS_END_DATE

トリガー構造体の終了日が有効です。 このフラグが設定されていない場合、終了日データは無視され、トリガーは無期限に有効になります。

TASK_TRIGGER_FLAG_KILL_AT_DURATION_END

タスクは、アクティブなトリガーの有効期間の終了時に終了します。 タスク スケジューラは、期間の終了時に、関連付けられているアプリケーションにWM_CLOSE メッセージを送信します。 WM_CLOSE送信できない場合 (たとえば、アプリケーションにウィンドウがない場合)、または受信WM_CLOSEから 3 分以内にアプリケーションが終了していない場合、タスク スケジューラは TerminateProcess を使用してアプリケーションを終了します。

TASK_TRIGGER_FLAG_DISABLED

タスク トリガーが非アクティブです。

TriggerType

トリガー の種類を 指定するTASK_TRIGGER_TYPE列挙値。 このメンバーは Type と共に使用 されます。 ここで指定するトリガーの種類によって、Type メンバーで指定されたTRIGGER_TYPE_UNIONのどのフィールドを使用するかを決定します。 トリガーの種類は、トリガーがタスクを実行するタイミングに基づいています。

Type

トリガーの詳細を指定する TRIGGER_TYPE_UNION 構造体。 TriggerType メンバーは、TRIGGER_TYPE_UNION共用体のどのフィールドを使用するかを決定します。

Reserved2

内部使用の場合のみ。この値は 0 である必要があります。

wRandomMinutesInterval

現在は使用しません。

注釈

これらの時刻には、作業項目の開始時刻、終了時刻、期間、変更フラグが含まれる場合があります。 トリガーを設定するときは、開始日の月と年を設定する必要があることに注意してください。

メモ スケジュールされた作業項目には、1 つ以上のトリガーを定義できます。 作業項目が実行される時間は、その項目に対して定義されているすべてのトリガーの和集合です。
 

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header mstask.h

こちらもご覧ください

IScheduledWorkItem::CreateTrigger

ITaskTrigger::GetTrigger

ITaskTrigger::SetTrigger

TASK_TRIGGER_TYPE

TRIGGER_TYPE_UNION

タスク スケジューラ 2.0 トリガー インターフェイス