Win32 API 日本語リファレンス
ホームSystem.TaskScheduler › ITaskSettings

ITaskSettings

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID8fd4711d-2d02-4c8c-87e3-eff699de127e継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

公式ドキュメント

Task Scheduler サービスがタスクを実行する際に使用する設定を提供します。

解説(Remarks)

既定では、タスクは実行開始から 72 時間後に停止されます。これは ExecutionTimeLimit 設定を変更することで変更できます。

タスクの XML を読み書きする場合、タスクの設定は Task Scheduler スキーマの Settings 要素で定義されます。

バッテリー節約機能が有効な場合、Windows Task Scheduler のタスクは、そのタスクが次の条件を満たすときにのみトリガーされます。

その他のトリガーはすべて、バッテリー節約機能がオフになるまで遅延されます。アプリケーションでバッテリー節約機能の状態にアクセスする方法の詳細については、SYSTEM_POWER_STATUS を参照してください。バッテリー節約機能に関する一般的な情報については、バッテリー節約機能(ハードウェアコンポーネントガイドライン) を参照してください。

このインターフェイスの詳細とコード例については、Time Trigger Example (C++) を参照してください。

メソッド 40

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT get_AllowDemandStart(VARIANT_BOOL* pAllowDemandStart)

実行コマンドまたはコンテキストメニューのいずれかを使用してタスクを開始できることを示す Boolean 値を取得または設定します。(Get)

pAllowDemandStartVARIANT_BOOL*inoutオンデマンドでの開始を許可するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

このプロパティが True に設定されている場合、タスクはトリガーがタスクを開始するタイミングとは無関係に開始できます。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの AllowStartOnDemand 要素で指定されます。

vtbl 8 HRESULT put_AllowDemandStart(VARIANT_BOOL allowDemandStart)

実行コマンドまたはコンテキストメニューのいずれかを使用してタスクを開始できることを示す Boolean 値を取得または設定します。(Put)

allowDemandStartVARIANT_BOOLinオンデマンド (要求に応じた) でのタスク開始を許可するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

このプロパティが True に設定されている場合、タスクはトリガーがタスクを開始するタイミングとは無関係に開始できます。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの AllowStartOnDemand 要素で指定されます。

vtbl 9 HRESULT get_RestartInterval(LPWSTR* pRestartInterval)

Task Scheduler がタスクの再起動を試みる期間を指定する値を取得または設定します。(Get)

pRestartIntervalLPWSTR*inoutタスク失敗時の再起動間隔を表す文字列を受け取る文字列ポインタへのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Interval 要素で指定されます。

vtbl 10 HRESULT put_RestartInterval(LPWSTR restartInterval)

Task Scheduler がタスクの再起動を試みる期間を指定する値を取得または設定します。(Put)

restartIntervalLPWSTRinタスク失敗時に再試行するまでの間隔を ISO8601 期間文字列で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Interval 要素で指定されます。

vtbl 11 HRESULT get_RestartCount(INT* pRestartCount)

Task Scheduler がタスクの再起動を試みる回数を取得または設定します。(Get)

pRestartCountINT*inoutタスク失敗時の最大再起動回数を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Count 要素で指定されます。

vtbl 12 HRESULT put_RestartCount(INT restartCount)

Task Scheduler がタスクの再起動を試みる回数を取得または設定します。(Put)

restartCountINTinタスク失敗時に再試行する最大回数を指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Count 要素で指定されます。

vtbl 13 HRESULT get_MultipleInstances(TASK_INSTANCES_POLICY* pPolicy)

Task Scheduler がタスクの複数のインスタンスをどのように扱うかを定義するポリシーを取得または設定します。(Get)

pPolicyTASK_INSTANCES_POLICY*inout同一タスクの複数インスタンス実行時のポリシー (TASK_INSTANCES_POLICY) を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの MultipleInstancesPolicy 要素で指定されます。

vtbl 14 HRESULT put_MultipleInstances(TASK_INSTANCES_POLICY policy)

Task Scheduler がタスクの複数のインスタンスをどのように扱うかを定義するポリシーを取得または設定します。(Put)

policyTASK_INSTANCES_POLICYin同一タスクの複数インスタンスが要求された場合の動作ポリシー (TASK_INSTANCES_POLICY) を指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの MultipleInstancesPolicy 要素で指定されます。

vtbl 15 HRESULT get_StopIfGoingOnBatteries(VARIANT_BOOL* pStopIfOnBatteries)

コンピューターがバッテリー電源に切り替わる場合にタスクを停止することを示す Boolean 値を取得または設定します。(Get)

pStopIfOnBatteriesVARIANT_BOOL*inoutバッテリー駆動に切り替わった際にタスクを停止するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの StopIfGoingOnBatteries 要素で指定されます。

vtbl 16 HRESULT put_StopIfGoingOnBatteries(VARIANT_BOOL stopIfOnBatteries)

コンピューターがバッテリー電源に切り替わる場合にタスクを停止することを示す Boolean 値を取得または設定します。(Put)

stopIfOnBatteriesVARIANT_BOOLinバッテリー駆動に切り替わった際にタスクを停止するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの StopIfGoingOnBatteries 要素で指定されます。

vtbl 17 HRESULT get_DisallowStartIfOnBatteries(VARIANT_BOOL* pDisallowStart)

コンピューターがバッテリー電源で動作している場合にタスクを開始しないことを示す Boolean 値を取得または設定します。(Get)

pDisallowStartVARIANT_BOOL*inoutバッテリー駆動中はタスクの開始を禁止するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの DisallowStartIfOnBatteries 要素で指定されます。

vtbl 18 HRESULT put_DisallowStartIfOnBatteries(VARIANT_BOOL disallowStart)

コンピューターがバッテリー電源で動作している場合にタスクを開始しないことを示す Boolean 値を取得または設定します。(Put)

disallowStartVARIANT_BOOLinバッテリー駆動中はタスクの開始を禁止するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの DisallowStartIfOnBatteries 要素で指定されます。

vtbl 19 HRESULT get_AllowHardTerminate(VARIANT_BOOL* pAllowHardTerminate)

Task Scheduler サービスが TerminateProcess を使用してタスクを終了できることを示す Boolean 値を取得または設定します。(Get)

pAllowHardTerminateVARIANT_BOOL*inoutタスクの強制終了を許可するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの AllowHardTerminate 要素で指定されます。

vtbl 20 HRESULT put_AllowHardTerminate(VARIANT_BOOL allowHardTerminate)

Task Scheduler サービスが TerminateProcess を使用してタスクを終了できることを示す Boolean 値を取得または設定します。(Put)

allowHardTerminateVARIANT_BOOLinタスクの強制終了を許可するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの AllowHardTerminate 要素で指定されます。

vtbl 21 HRESULT get_StartWhenAvailable(VARIANT_BOOL* pStartWhenAvailable)

スケジュールされた時刻を過ぎた後の任意の時点で Task Scheduler がタスクを開始できることを示す Boolean 値を取得または設定します。(Get)

pStartWhenAvailableVARIANT_BOOL*inout予定時刻を過ぎた場合に可能になり次第タスクを開始するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

このプロパティは、終了境界を持つ時間ベースのタスク、または無限に繰り返すように設定された時間ベースのタスクにのみ適用されます。

(StartWhenAvailable プロパティが True に設定されているために)スケジュールされた時刻を過ぎてから開始されるタスクは、Task Scheduler サービスのタスクキューにキューイングされ、遅延後に開始されます。既定の遅延は 10 分です。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの StartWhenAvailable 要素で指定されます。

vtbl 22 HRESULT put_StartWhenAvailable(VARIANT_BOOL startWhenAvailable)

スケジュールされた時刻を過ぎた後の任意の時点で Task Scheduler がタスクを開始できることを示す Boolean 値を取得または設定します。(Put)

startWhenAvailableVARIANT_BOOLin予定時刻を過ぎた場合に可能になり次第タスクを開始するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

このプロパティは、終了境界を持つ時間ベースのタスク、または無限に繰り返すように設定された時間ベースのタスクにのみ適用されます。

(StartWhenAvailable プロパティが True に設定されているために)スケジュールされた時刻を過ぎてから開始されるタスクは、Task Scheduler サービスのタスクキューにキューイングされ、遅延後に開始されます。既定の遅延は 10 分です。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの StartWhenAvailable 要素で指定されます。

vtbl 23 HRESULT get_XmlText(LPWSTR* pText)

タスク設定の XML 形式の定義を取得または設定します。(Get)

pTextLPWSTR*inoutタスク設定を表す XML テキストを受け取る文字列ポインタへのポインタである。
vtbl 24 HRESULT put_XmlText(LPWSTR text)

タスク設定の XML 形式の定義を取得または設定します。(Put)

textLPWSTRinタスク設定として設定する XML テキストを指定する。
vtbl 25 HRESULT get_RunOnlyIfNetworkAvailable(VARIANT_BOOL* pRunOnlyIfNetworkAvailable)

ネットワークが利用可能な場合にのみ Task Scheduler がタスクを実行することを示す Boolean 値を取得または設定します。(Get)

pRunOnlyIfNetworkAvailableVARIANT_BOOL*inoutネットワークが利用可能な場合のみタスクを実行するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの RunOnlyIfNetworkAvailable 要素で指定されます。

vtbl 26 HRESULT put_RunOnlyIfNetworkAvailable(VARIANT_BOOL runOnlyIfNetworkAvailable)

ネットワークが利用可能な場合にのみ Task Scheduler がタスクを実行することを示す Boolean 値を取得または設定します。(Put)

runOnlyIfNetworkAvailableVARIANT_BOOLinネットワークが利用可能な場合のみタスクを実行するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの RunOnlyIfNetworkAvailable 要素で指定されます。

vtbl 27 HRESULT get_ExecutionTimeLimit(LPWSTR* pExecutionTimeLimit)

タスクの完了に許可される時間を取得または設定します。(Get)

pExecutionTimeLimitLPWSTR*inoutタスクの最大実行時間を表す文字列を受け取る文字列ポインタへのポインタである。

解説(Remarks)

この文字列の形式は PnYnMnDTnHnMnS です。ここで nY は年数、nM は月数、nD は日数、'T' は日付/時刻の区切り文字、nH は時間数、nM は分数、nS は秒数を表します(たとえば、PT5M は 5 分を、P1M4DT2H5M は 1 か月、4 日、2 時間、5 分を指定します)。PT0S を指定すると、タスクを無期限に実行できるようになります。

タスクがオンデマンドで開始された場合、ExecutionTimeLimit 設定はバイパスされます。そのため、オンデマンドで開始されたタスクは、ExecutionTimeLimit を超えても終了されません。
タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの ExecutionTimeLimit 要素で指定されます。
vtbl 28 HRESULT put_ExecutionTimeLimit(LPWSTR executionTimeLimit)

タスクの完了に許可される時間を取得または設定します。(Put)

executionTimeLimitLPWSTRinタスクの最大実行時間を ISO8601 期間文字列で指定する。

解説(Remarks)

この文字列の形式は PnYnMnDTnHnMnS です。ここで nY は年数、nM は月数、nD は日数、'T' は日付/時刻の区切り文字、nH は時間数、nM は分数、nS は秒数を表します(たとえば、PT5M は 5 分を、P1M4DT2H5M は 1 か月、4 日、2 時間、5 分を指定します)。PT0S を指定すると、タスクを無期限に実行できるようになります。

タスクがオンデマンドで開始された場合、ExecutionTimeLimit 設定はバイパスされます。そのため、オンデマンドで開始されたタスクは、ExecutionTimeLimit を超えても終了されません。
タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの ExecutionTimeLimit 要素で指定されます。
vtbl 29 HRESULT get_Enabled(VARIANT_BOOL* pEnabled)

タスクが有効であることを示す Boolean 値を取得または設定します。この設定が True の場合にのみタスクを実行できます。

pEnabledVARIANT_BOOL*inoutタスクが有効かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Enabled (settingsType) 要素で指定されます。

vtbl 30 HRESULT put_Enabled(VARIANT_BOOL enabled)
enabledVARIANT_BOOLinタスクを有効にするかどうかを VARIANT_BOOL で指定する。
vtbl 31 HRESULT get_DeleteExpiredTaskAfter(LPWSTR* pExpirationDelay)

タスクが期限切れになった後、Task Scheduler がタスクを削除するまでに待機する時間を取得または設定します。(Get)

pExpirationDelayLPWSTR*inout失効後にタスクを削除するまでの待機時間を表す文字列を受け取る文字列ポインタへのポインタである。

解説(Remarks)

タスクは、そのタスクに関連付けられたすべてのトリガーの終了境界を超えると期限切れになります。トリガーの終了境界は、すべてのトリガーインターフェイスが継承する EndBoundary プロパティで指定されます。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの DeleteExpiredTaskAfter (settingsType) 要素で指定されます。

vtbl 32 HRESULT put_DeleteExpiredTaskAfter(LPWSTR expirationDelay)

タスクが期限切れになった後、Task Scheduler がタスクを削除するまでに待機する時間を取得または設定します。(Put)

expirationDelayLPWSTRin失効後にタスクを削除するまでの待機時間を ISO8601 期間文字列で指定する。

解説(Remarks)

タスクは、そのタスクに関連付けられたすべてのトリガーの終了境界を超えると期限切れになります。トリガーの終了境界は、すべてのトリガーインターフェイスが継承する EndBoundary プロパティで指定されます。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの DeleteExpiredTaskAfter (settingsType) 要素で指定されます。

vtbl 33 HRESULT get_Priority(INT* pPriority)

タスクの優先度レベルを取得または設定します。(Get)

pPriorityINT*inoutタスクの優先度 (0〜10) を受け取る出力先へのポインタである。

解説(Remarks)

優先度レベル 0 が最も高い優先度で、優先度レベル 10 が最も低い優先度です。既定値は 7 です。優先度レベル 7 と 8 はバックグラウンドタスクに使用され、優先度レベル 4、5、6 はインタラクティブなタスクに使用されます。

タスクのアクションは、Priority Class 値に基づく優先度を持つプロセスで開始されます。COM ハンドラー、メッセージボックス、電子メールのタスクアクションには、Priority Level 値(スレッド優先度)が使用されます。Priority Class 値と Priority Level 値の詳細については、Scheduling Priorities を参照してください。次の表は、priority パラメーターに指定できる値と、対応する Priority Class 値および Priority Level 値の一覧です。

タスクの priority Priority Class Priority Level
0 REALTIME_PRIORITY_CLASS THREAD_PRIORITY_TIME_CRITICAL
1 HIGH_PRIORITY_CLASS THREAD_PRIORITY_HIGHEST
2 ABOVE_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_ABOVE_NORMAL
3 ABOVE_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_ABOVE_NORMAL
4 NORMAL_PRIORITY_CLASS THREAD_PRIORITY_NORMAL
5 NORMAL_PRIORITY_CLASS THREAD_PRIORITY_NORMAL
6 NORMAL_PRIORITY_CLASS THREAD_PRIORITY_NORMAL
7 BELOW_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_BELOW_NORMAL
8 BELOW_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_BELOW_NORMAL
9 IDLE_PRIORITY_CLASS THREAD_PRIORITY_LOWEST
10 IDLE_PRIORITY_CLASS THREAD_PRIORITY_IDLE

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Priority (settingsType) 要素で指定されます。

vtbl 34 HRESULT put_Priority(INT priority)

タスクの優先度レベルを取得または設定します。(Put)

priorityINTinタスクの優先度を 0 (最高) から 10 (最低) の範囲で指定する。

解説(Remarks)

優先度レベル 0 が最も高い優先度で、優先度レベル 10 が最も低い優先度です。既定値は 7 です。優先度レベル 7 と 8 はバックグラウンドタスクに使用され、優先度レベル 4、5、6 はインタラクティブなタスクに使用されます。

タスクのアクションは、Priority Class 値に基づく優先度を持つプロセスで開始されます。COM ハンドラー、メッセージボックス、電子メールのタスクアクションには、Priority Level 値(スレッド優先度)が使用されます。Priority Class 値と Priority Level 値の詳細については、Scheduling Priorities を参照してください。この値はメモリ優先度にも影響します(MEMORY_PRIORITY_INFORMATION を参照)。次の表は、priority パラメーターに指定できる値と、対応する Priority Class 値および Priority Level 値の一覧です。

タスクの priority Priority Class Priority Level
0 REALTIME_PRIORITY_CLASS THREAD_PRIORITY_TIME_CRITICAL
1 HIGH_PRIORITY_CLASS THREAD_PRIORITY_HIGHEST
2 ABOVE_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_ABOVE_NORMAL
3 ABOVE_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_ABOVE_NORMAL
4 NORMAL_PRIORITY_CLASS THREAD_PRIORITY_NORMAL
5 NORMAL_PRIORITY_CLASS THREAD_PRIORITY_NORMAL
6 NORMAL_PRIORITY_CLASS THREAD_PRIORITY_NORMAL
7 BELOW_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_BELOW_NORMAL
8 BELOW_NORMAL_PRIORITY_CLASS THREAD_PRIORITY_BELOW_NORMAL
9 IDLE_PRIORITY_CLASS THREAD_PRIORITY_LOWEST
10 IDLE_PRIORITY_CLASS THREAD_PRIORITY_IDLE

タスク優先度 4 はメモリ優先度 MEMORY_PRIORITY_NORMAL(5) に、5 は MEMORY_PRIORITY_BELOW_NORMAL(4) に、6 は MEMORY_PRIORITY_MEDIUM(3) に対応します。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Priority (settingsType) 要素で指定されます。

vtbl 35 HRESULT get_Compatibility(TASK_COMPATIBILITY* pCompatLevel)

タスクが互換性を持つ Task Scheduler のバージョンを示す整数値を取得または設定します。(Get)

pCompatLevelTASK_COMPATIBILITY*inoutタスクの互換性レベル (TASK_COMPATIBILITY) を受け取る出力先へのポインタである。

解説(Remarks)

Compatibility プロパティを通じて設定されるタスクの互換性は、タスクを Windows XP、Windows Server 2003、または Windows 2000 のコンピューターからアクセスまたは変更する必要がある場合にのみ TASK_COMPATIBILITY_V1 に設定してください。それ以外の場合は、タスクがより多くの機能を利用できるため、Task Scheduler 2.0 の互換性を使用することをお勧めします。

AT コマンドと互換性のあるタスクは、時間トリガーを 1 つだけ持つことができます。

Task Scheduler 1.0 と互換性のあるタスクは、時間トリガー、ログオントリガー、またはブートトリガーのみを持つことができ、実行可能アクションのみを持つことができます。

タスクの互換性の詳細については、What's New in Task Scheduler および Tasks を参照してください。

vtbl 36 HRESULT put_Compatibility(TASK_COMPATIBILITY compatLevel)

タスクが互換性を持つ Task Scheduler のバージョンを示す整数値を取得または設定します。(Put)

compatLevelTASK_COMPATIBILITYinタスクの互換性レベル (TASK_COMPATIBILITY) を指定する。

解説(Remarks)

Compatibility プロパティを通じて設定されるタスクの互換性は、タスクを Windows XP、Windows Server 2003、または Windows 2000 のコンピューターからアクセスまたは変更する必要がある場合にのみ TASK_COMPATIBILITY_V1 に設定してください。それ以外の場合は、タスクがより多くの機能を利用できるため、Task Scheduler 2.0 の互換性を使用することをお勧めします。

AT コマンドと互換性のあるタスクは、時間トリガーを 1 つだけ持つことができます。

Task Scheduler 1.0 と互換性のあるタスクは、時間トリガー、ログオントリガー、またはブートトリガーのみを持つことができ、実行可能アクションのみを持つことができます。

タスクの互換性の詳細については、What's New in Task Scheduler および Tasks を参照してください。

vtbl 37 HRESULT get_Hidden(VARIANT_BOOL* pHidden)

タスクが UI に表示されないことを示す Boolean 値を取得または設定します。(Get)

pHiddenVARIANT_BOOL*inoutタスクが非表示かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Hidden (settingsType) 要素で指定されます。

vtbl 38 HRESULT put_Hidden(VARIANT_BOOL hidden)

タスクが UI に表示されないことを示す Boolean 値を取得または設定します。(Put)

hiddenVARIANT_BOOLinタスクを非表示にするかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの Hidden (settingsType) 要素で指定されます。

vtbl 39 HRESULT get_IdleSettings(IIdleSettings** ppIdleSettings)

コンピューターがアイドル状態のときに Task Scheduler がどのようにタスクを実行するかを指定する情報を取得または設定します。(Get)

ppIdleSettingsIIdleSettings**outアイドル状態に関する設定を表す IIdleSettings インターフェイスを受け取るポインタへのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの IdleSettings 要素で指定されます。

バッテリー節約機能が有効な場合、Windows Task Scheduler のタスクは、そのタスクが次の条件を満たすときにのみトリガーされます。

その他のトリガーはすべて、バッテリー節約機能がオフになるまで遅延されます。アプリケーションでバッテリー節約機能の状態にアクセスする方法の詳細については、SYSTEM_POWER_STATUS を参照してください。バッテリー節約機能に関する一般的な情報については、バッテリー節約機能(ハードウェアコンポーネントガイドライン) を参照してください。
vtbl 40 HRESULT put_IdleSettings(IIdleSettings* pIdleSettings)

コンピューターがアイドル状態のときに Task Scheduler がどのようにタスクを実行するかを指定する情報を取得または設定します。(Put)

pIdleSettingsIIdleSettings*inタスクに設定するアイドル設定を表す IIdleSettings インターフェイスへのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの IdleSettings 要素で指定されます。

バッテリー節約機能が有効な場合、Windows Task Scheduler のタスクは、そのタスクが次の条件を満たすときにのみトリガーされます。

その他のトリガーはすべて、バッテリー節約機能がオフになるまで遅延されます。アプリケーションでバッテリー節約機能の状態にアクセスする方法の詳細については、SYSTEM_POWER_STATUS を参照してください。バッテリー節約機能に関する一般的な情報については、バッテリー節約機能(ハードウェアコンポーネントガイドライン) を参照してください。
vtbl 41 HRESULT get_RunOnlyIfIdle(VARIANT_BOOL* pRunOnlyIfIdle)

コンピューターがアイドル状態の場合にのみ Task Scheduler がタスクを実行することを示す Boolean 値を取得または設定します。(Get)

pRunOnlyIfIdleVARIANT_BOOL*inoutコンピューターがアイドル状態の場合のみタスクを実行するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの RunOnlyIfIdle 要素で指定されます。

vtbl 42 HRESULT put_RunOnlyIfIdle(VARIANT_BOOL runOnlyIfIdle)

コンピューターがアイドル状態の場合にのみ Task Scheduler がタスクを実行することを示す Boolean 値を取得または設定します。(Put)

runOnlyIfIdleVARIANT_BOOLinコンピューターがアイドル状態の場合のみタスクを実行するかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの RunOnlyIfIdle 要素で指定されます。

vtbl 43 HRESULT get_WakeToRun(VARIANT_BOOL* pWake)

タスクの実行時刻になったときに Task Scheduler がコンピューターをスリープ解除し、タスクが完了するまでコンピューターをスリープさせないことを示す Boolean 値を取得または設定します。(Get)

pWakeVARIANT_BOOL*inoutタスク実行のためにコンピューターをスリープから復帰させるかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。

解説(Remarks)

タスクのこのプロパティが true に設定されていて、コンピューターが既にスリープ解除されている状態でトリガーされた場合、Task Scheduler はタスクの実行が完了するまでコンピューターをスリープさせないよう要求します。

Task Scheduler サービスがタスクを実行するためにコンピューターをスリープ解除した場合、コンピューターがスリープまたは休止状態でなくなっても画面はオフのままになることがあります。Windows Vista がユーザーがコンピューターの使用に戻ったことを検出すると、画面がオンになります。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの WakeToRun 要素で指定されます。

vtbl 44 HRESULT put_WakeToRun(VARIANT_BOOL wake)

タスクの実行時刻になったときに Task Scheduler がコンピューターをスリープ解除し、タスクが完了するまでコンピューターをスリープさせないことを示す Boolean 値を取得または設定します。(Put)

wakeVARIANT_BOOLinタスク実行のためにコンピューターをスリープから復帰させるかどうかを VARIANT_BOOL で指定する。

解説(Remarks)

タスクのこのプロパティが true に設定されていて、コンピューターが既にスリープ解除されている状態でトリガーされた場合、Task Scheduler はタスクの実行が完了するまでコンピューターをスリープさせないよう要求します。

Task Scheduler サービスがタスクを実行するためにコンピューターをスリープ解除した場合、コンピューターがスリープまたは休止状態でなくなっても画面はオフのままになることがあります。Windows Vista がユーザーがコンピューターの使用に戻ったことを検出すると、画面がオンになります。

タスクの XML を読み書きする場合、この設定は Task Scheduler スキーマの WakeToRun 要素で指定されます。

vtbl 45 HRESULT get_NetworkSettings(INetworkSettings** ppNetworkSettings)

ネットワークプロファイルの識別子と名前を含むネットワーク設定オブジェクトを取得または設定します。(Get)

ppNetworkSettingsINetworkSettings**outネットワークに関する設定を表す INetworkSettings インターフェイスを受け取るポインタへのポインタである。
vtbl 46 HRESULT put_NetworkSettings(INetworkSettings* pNetworkSettings)

ネットワークプロファイルの識別子と名前を含むネットワーク設定オブジェクトを取得または設定します。(Put)

pNetworkSettingsINetworkSettings*inタスクに設定するネットワーク設定を表す INetworkSettings インターフェイスへのポインタである。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ITaskSettings "{8FD4711D-2D02-4C8C-87E3-EFF699DE127E}"
#usecom global ITaskSettings IID_ITaskSettings "{}"
#comfunc global ITaskSettings_get_AllowDemandStart            7 var
#comfunc global ITaskSettings_put_AllowDemandStart            8 int
#comfunc global ITaskSettings_get_RestartInterval             9 var
#comfunc global ITaskSettings_put_RestartInterval             10 wstr
#comfunc global ITaskSettings_get_RestartCount                11 var
#comfunc global ITaskSettings_put_RestartCount                12 int
#comfunc global ITaskSettings_get_MultipleInstances           13 var
#comfunc global ITaskSettings_put_MultipleInstances           14 int
#comfunc global ITaskSettings_get_StopIfGoingOnBatteries      15 var
#comfunc global ITaskSettings_put_StopIfGoingOnBatteries      16 int
#comfunc global ITaskSettings_get_DisallowStartIfOnBatteries  17 var
#comfunc global ITaskSettings_put_DisallowStartIfOnBatteries  18 int
#comfunc global ITaskSettings_get_AllowHardTerminate          19 var
#comfunc global ITaskSettings_put_AllowHardTerminate          20 int
#comfunc global ITaskSettings_get_StartWhenAvailable          21 var
#comfunc global ITaskSettings_put_StartWhenAvailable          22 int
#comfunc global ITaskSettings_get_XmlText                     23 var
#comfunc global ITaskSettings_put_XmlText                     24 wstr
#comfunc global ITaskSettings_get_RunOnlyIfNetworkAvailable   25 var
#comfunc global ITaskSettings_put_RunOnlyIfNetworkAvailable   26 int
#comfunc global ITaskSettings_get_ExecutionTimeLimit          27 var
#comfunc global ITaskSettings_put_ExecutionTimeLimit          28 wstr
#comfunc global ITaskSettings_get_Enabled                     29 var
#comfunc global ITaskSettings_put_Enabled                     30 int
#comfunc global ITaskSettings_get_DeleteExpiredTaskAfter      31 var
#comfunc global ITaskSettings_put_DeleteExpiredTaskAfter      32 wstr
#comfunc global ITaskSettings_get_Priority                    33 var
#comfunc global ITaskSettings_put_Priority                    34 int
#comfunc global ITaskSettings_get_Compatibility               35 var
#comfunc global ITaskSettings_put_Compatibility               36 int
#comfunc global ITaskSettings_get_Hidden                      37 var
#comfunc global ITaskSettings_put_Hidden                      38 int
#comfunc global ITaskSettings_get_IdleSettings                39 sptr
#comfunc global ITaskSettings_put_IdleSettings                40 sptr
#comfunc global ITaskSettings_get_RunOnlyIfIdle               41 var
#comfunc global ITaskSettings_put_RunOnlyIfIdle               42 int
#comfunc global ITaskSettings_get_WakeToRun                   43 var
#comfunc global ITaskSettings_put_WakeToRun                   44 int
#comfunc global ITaskSettings_get_NetworkSettings             45 sptr
#comfunc global ITaskSettings_put_NetworkSettings             46 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。