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

ITaskSettings3

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IID0ad9d0d7-0c7f-4ebb-9a5f-d1c648dca528継承元ITaskSettings呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl47

メソッド 9

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

vtbl 47 HRESULT get_DisallowStartOnRemoteAppSession(VARIANT_BOOL* pDisallowStart)
pDisallowStartVARIANT_BOOL*inoutリモートアプリセッションでのタスク開始を禁止するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 48 HRESULT put_DisallowStartOnRemoteAppSession(VARIANT_BOOL disallowStart)
disallowStartVARIANT_BOOLinリモートアプリセッションでのタスク開始を禁止するかどうかを VARIANT_BOOL で指定する。
vtbl 49 HRESULT get_UseUnifiedSchedulingEngine(VARIANT_BOOL* pUseUnifiedEngine)
pUseUnifiedEngineVARIANT_BOOL*inout統合スケジューリングエンジンを使用するかどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 50 HRESULT put_UseUnifiedSchedulingEngine(VARIANT_BOOL useUnifiedEngine)
useUnifiedEngineVARIANT_BOOLin統合スケジューリングエンジンを使用するかどうかを VARIANT_BOOL で指定する。
vtbl 51 HRESULT get_MaintenanceSettings(IMaintenanceSettings** ppMaintenanceSettings)
ppMaintenanceSettingsIMaintenanceSettings**out自動メンテナンスに関する設定を表す IMaintenanceSettings インターフェイスを受け取るポインタへのポインタである。設定がない場合は NULL が返る。
vtbl 52 HRESULT put_MaintenanceSettings(IMaintenanceSettings* pMaintenanceSettings)
pMaintenanceSettingsIMaintenanceSettings*inタスクに設定するメンテナンス設定を表す IMaintenanceSettings インターフェイスへのポインタである。
vtbl 53 HRESULT CreateMaintenanceSettings(IMaintenanceSettings** ppMaintenanceSettings)
ppMaintenanceSettingsIMaintenanceSettings**out新規に作成したメンテナンス設定を表す IMaintenanceSettings インターフェイスを受け取るポインタへのポインタである。
vtbl 54 HRESULT get_Volatile(VARIANT_BOOL* pVolatile)
pVolatileVARIANT_BOOL*inoutタスクが揮発性 (再起動後に保持されない) かどうかを表す VARIANT_BOOL を受け取る出力先へのポインタである。
vtbl 55 HRESULT put_Volatile(VARIANT_BOOL Volatile)
VolatileVARIANT_BOOLinタスクを揮発性 (システム再起動後に保持しない) にするかどうかを VARIANT_BOOL で指定する。

HSP用 COM定義

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

出力引数:
#define global IID_ITaskSettings3 "{0AD9D0D7-0C7F-4EBB-9A5F-D1C648DCA528}"
#usecom global ITaskSettings3 IID_ITaskSettings3 "{}"
#comfunc global ITaskSettings3_get_DisallowStartOnRemoteAppSession  47 var
#comfunc global ITaskSettings3_put_DisallowStartOnRemoteAppSession  48 int
#comfunc global ITaskSettings3_get_UseUnifiedSchedulingEngine       49 var
#comfunc global ITaskSettings3_put_UseUnifiedSchedulingEngine       50 int
#comfunc global ITaskSettings3_get_MaintenanceSettings              51 sptr
#comfunc global ITaskSettings3_put_MaintenanceSettings              52 sptr
#comfunc global ITaskSettings3_CreateMaintenanceSettings            53 sptr
#comfunc global ITaskSettings3_get_Volatile                         54 var
#comfunc global ITaskSettings3_put_Volatile                         55 int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。