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

IScheduledWorkItem

COM
IIDa6b952f0-a4b1-11d0-997d-00aa006887ec継承元IUnknown自前メソッド開始 vtbl3

メソッド 29

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT CreateTrigger(WORD* piNewTrigger, ITaskTrigger** ppTrigger)
piNewTriggerWORD*out新しく作成されたトリガーのインデックスを受け取る変数へのポインタである。
ppTriggerITaskTrigger**out新規作成されたトリガーを操作する ITaskTrigger インターフェイスを受け取る出力ポインタである。
vtbl 4 HRESULT DeleteTrigger(WORD iTrigger)
iTriggerWORDin削除するトリガーのゼロ始まりのインデックスを指定する。
vtbl 5 HRESULT GetTriggerCount(WORD* pwCount)
pwCountWORD*outこのワークアイテムに関連付けられたトリガーの数を受け取る変数へのポインタである。
vtbl 6 HRESULT GetTrigger(WORD iTrigger, ITaskTrigger** ppTrigger)
iTriggerWORDin取得するトリガーのゼロ始まりのインデックスを指定する。
ppTriggerITaskTrigger**out指定したトリガーを操作する ITaskTrigger インターフェイスを受け取る出力ポインタである。
vtbl 7 HRESULT GetTriggerString(WORD iTrigger, LPWSTR* ppwszTrigger)
iTriggerWORDin対象とするトリガーのゼロ始まりのインデックスを指定する。
ppwszTriggerLPWSTR*out指定したトリガーを人間が読める形式で表した文字列を受け取る出力ポインタである。CoTaskMemFree で解放する。
vtbl 8 HRESULT GetRunTimes(SYSTEMTIME* pstBegin, SYSTEMTIME* pstEnd, WORD* pCount, SYSTEMTIME** rgstTaskTimes)
pstBeginSYSTEMTIME*in実行予定時刻を列挙する範囲の開始日時を指定する SYSTEMTIME 構造体へのポインタである。
pstEndSYSTEMTIME*in実行予定時刻を列挙する範囲の終了日時を指定する SYSTEMTIME 構造体へのポインタである。NULL の場合は無限大として扱われる。
pCountWORD*inout入力では取得を希望する実行時刻の最大数を指定し、出力では実際に取得された数を受け取る入出力ポインタである。
rgstTaskTimesSYSTEMTIME**out実行予定時刻の配列を受け取る出力ポインタである。配列は CoTaskMemFree で解放する。
vtbl 9 HRESULT GetNextRunTime(SYSTEMTIME* pstNextRun)
pstNextRunSYSTEMTIME*inoutこのワークアイテムの次回実行予定日時を受け取る SYSTEMTIME 構造体へのポインタである。
vtbl 10 HRESULT SetIdleWait(WORD wIdleMinutes, WORD wDeadlineMinutes)
wIdleMinutesWORDinタスクを開始する前にコンピューターがアイドル状態である必要がある時間 (分) を指定する。
wDeadlineMinutesWORDinアイドル状態を待機する最大時間 (分) を指定する。
vtbl 11 HRESULT GetIdleWait(WORD* pwIdleMinutes, WORD* pwDeadlineMinutes)
pwIdleMinutesWORD*out現在のアイドル待機時間 (分) を受け取る変数へのポインタである。
pwDeadlineMinutesWORD*out現在のアイドル待機の最大時間 (分) を受け取る変数へのポインタである。
vtbl 12 HRESULT Run()
vtbl 13 HRESULT Terminate()
vtbl 14 HRESULT EditWorkItem(HWND hParent, DWORD dwReserved)
hParentHWNDinプロパティシートの親となるウィンドウのハンドルである。
dwReservedDWORDin予約済み。0 を指定する。
vtbl 15 HRESULT GetMostRecentRunTime(SYSTEMTIME* pstLastRun)
pstLastRunSYSTEMTIME*outこのワークアイテムが最後に実行された日時を受け取る SYSTEMTIME 構造体へのポインタである。
vtbl 16 HRESULT GetStatus(HRESULT* phrStatus)
phrStatusHRESULT*outこのワークアイテムの現在の状態を表す HRESULT を受け取る変数へのポインタである。
vtbl 17 HRESULT GetExitCode(DWORD* pdwExitCode)
pdwExitCodeDWORD*out最後に実行されたタスクプログラムの終了コードを受け取る変数へのポインタである。
vtbl 18 HRESULT SetComment(LPWSTR pwszComment)
pwszCommentLPWSTRinこのワークアイテムに設定するコメント文字列である。
vtbl 19 HRESULT GetComment(LPWSTR* ppwszComment)
ppwszCommentLPWSTR*outこのワークアイテムのコメント文字列を受け取る出力ポインタである。CoTaskMemFree で解放する。
vtbl 20 HRESULT SetCreator(LPWSTR pwszCreator)
pwszCreatorLPWSTRinこのワークアイテムの作成者を表す文字列である。
vtbl 21 HRESULT GetCreator(LPWSTR* ppwszCreator)
ppwszCreatorLPWSTR*outこのワークアイテムの作成者を表す文字列を受け取る出力ポインタである。CoTaskMemFree で解放する。
vtbl 22 HRESULT SetWorkItemData(WORD cbData, BYTE* rgbData)
cbDataWORDinrgbData が指す関連付けデータのバイト数を指定する。
rgbDataBYTE*inこのワークアイテムに関連付けるアプリケーション定義のバイナリデータへのポインタである。
vtbl 23 HRESULT GetWorkItemData(WORD* pcbData, BYTE** prgbData)
pcbDataWORD*out取得した関連付けデータのバイト数を受け取る変数へのポインタである。
prgbDataBYTE**outワークアイテムに関連付けられたバイナリデータを受け取る出力ポインタである。CoTaskMemFree で解放する。
vtbl 24 HRESULT SetErrorRetryCount(WORD wRetryCount)
wRetryCountWORDinタスク起動に失敗した際の再試行回数を指定する。
vtbl 25 HRESULT GetErrorRetryCount(WORD* pwRetryCount)
pwRetryCountWORD*out現在設定されている再試行回数を受け取る変数へのポインタである。
vtbl 26 HRESULT SetErrorRetryInterval(WORD wRetryInterval)
wRetryIntervalWORDin再試行の間隔 (分) を指定する。
vtbl 27 HRESULT GetErrorRetryInterval(WORD* pwRetryInterval)
pwRetryIntervalWORD*out現在設定されている再試行間隔 (分) を受け取る変数へのポインタである。
vtbl 28 HRESULT SetFlags(DWORD dwFlags)
dwFlagsDWORDinワークアイテムの動作を制御する TASK_FLAG_ 系のフラグの組み合わせを指定する。
vtbl 29 HRESULT GetFlags(DWORD* pdwFlags)
pdwFlagsDWORD*out現在設定されているワークアイテムのフラグを受け取る変数へのポインタである。
vtbl 30 HRESULT SetAccountInformation(LPWSTR pwszAccountName, LPWSTR pwszPassword)
pwszAccountNameLPWSTRinタスクを実行するアカウント名を指定する。
pwszPasswordLPWSTRinアカウントのパスワードを指定する。NULL を指定するとローカルシステムアカウントとして扱われる。
vtbl 31 HRESULT GetAccountInformation(LPWSTR* ppwszAccountName)
ppwszAccountNameLPWSTR*outタスクの実行に使用されるアカウント名を受け取る出力ポインタである。CoTaskMemFree で解放する。

HSP用 COM定義

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

出力引数:
#define global IID_IScheduledWorkItem "{A6B952F0-A4B1-11D0-997D-00AA006887EC}"
#usecom global IScheduledWorkItem IID_IScheduledWorkItem "{}"
#comfunc global IScheduledWorkItem_CreateTrigger          3 var,sptr
#comfunc global IScheduledWorkItem_DeleteTrigger          4 int
#comfunc global IScheduledWorkItem_GetTriggerCount        5 var
#comfunc global IScheduledWorkItem_GetTrigger             6 int,sptr
#comfunc global IScheduledWorkItem_GetTriggerString       7 int,var
#comfunc global IScheduledWorkItem_GetRunTimes            8 var,var,var,var
#comfunc global IScheduledWorkItem_GetNextRunTime         9 var
#comfunc global IScheduledWorkItem_SetIdleWait            10 int,int
#comfunc global IScheduledWorkItem_GetIdleWait            11 var,var
#comfunc global IScheduledWorkItem_Run                    12
#comfunc global IScheduledWorkItem_Terminate              13
#comfunc global IScheduledWorkItem_EditWorkItem           14 sptr,int
#comfunc global IScheduledWorkItem_GetMostRecentRunTime   15 var
#comfunc global IScheduledWorkItem_GetStatus              16 var
#comfunc global IScheduledWorkItem_GetExitCode            17 var
#comfunc global IScheduledWorkItem_SetComment             18 wstr
#comfunc global IScheduledWorkItem_GetComment             19 var
#comfunc global IScheduledWorkItem_SetCreator             20 wstr
#comfunc global IScheduledWorkItem_GetCreator             21 var
#comfunc global IScheduledWorkItem_SetWorkItemData        22 int,var
#comfunc global IScheduledWorkItem_GetWorkItemData        23 var,var
#comfunc global IScheduledWorkItem_SetErrorRetryCount     24 int
#comfunc global IScheduledWorkItem_GetErrorRetryCount     25 var
#comfunc global IScheduledWorkItem_SetErrorRetryInterval  26 int
#comfunc global IScheduledWorkItem_GetErrorRetryInterval  27 var
#comfunc global IScheduledWorkItem_SetFlags               28 int
#comfunc global IScheduledWorkItem_GetFlags               29 var
#comfunc global IScheduledWorkItem_SetAccountInformation  30 wstr,wstr
#comfunc global IScheduledWorkItem_GetAccountInformation  31 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。