ITsSbTaskPluginNotifySink
COM公式ドキュメント
タスクに関するステータスやエラーメッセージを Remote Desktop Connection Broker (RD 接続ブローカー) に報告するメソッドを公開します。
メソッド 4
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
タスクがスケジュールされたことを Remote Desktop Connection Broker (RD 接続ブローカー) に通知します。
| szTargetName | LPWSTR | in | ターゲットの名前。 |
| TaskStartTime | FILETIME | in | 開始時刻 (UTC) を指定する FILETIME 構造体。 |
| TaskEndTime | FILETIME | in | 終了時刻 (UTC) を指定する FILETIME 構造体。 |
| TaskDeadline | FILETIME | in | 期限 (UTC) を指定する FILETIME 構造体。 |
| szTaskLabel | LPWSTR | in | タスクの目的を説明するラベル。 |
| szTaskIdentifier | LPWSTR | in | ターゲットを識別します。 |
| szTaskPlugin | LPWSTR | in | タスクエージェントの表示名。 |
| dwTaskStatus | DWORD | in | タスクの状態を表す RDV_TASK_STATUS 列挙値。 |
| saContext | SAFEARRAY* | in | タスクに関連付けられたコンテキストバイト。 |
戻り値
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
タスクがキューから削除されたことを Remote Desktop Connection Broker (RD 接続ブローカー) に通知します。
| szTargetName | LPWSTR | in | ターゲットの名前。 |
| szTaskIdentifier | LPWSTR | in | タスクを識別する GUID。 |
戻り値
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
タスクのステータスが変更されたことを Remote Desktop Connection Broker (RD 接続ブローカー) に通知します。
| szTargetName | LPWSTR | in | ターゲットの名前。 |
| TaskIdentifier | LPWSTR | in | タスクを識別する GUID。 |
| TaskStatus | RDV_TASK_STATUS | in | タスクの新しい状態を表す RDV_TASK_STATUS 列挙値。 |
戻り値
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
新しいタスクレポートを Remote Desktop Connection Broker (RD 接続ブローカー) に通知します。
| szHostName | LPWSTR | in | レポートが配置されているホストの名前。 |
戻り値
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_ITsSbTaskPluginNotifySink "{6AAF899E-C2EC-45EE-AA37-45E60895261A}" #usecom global ITsSbTaskPluginNotifySink IID_ITsSbTaskPluginNotifySink "{}" #comfunc global ITsSbTaskPluginNotifySink_OnSetTaskTime 5 wstr,int,int,int,wstr,wstr,wstr,int,var #comfunc global ITsSbTaskPluginNotifySink_OnDeleteTaskTime 6 wstr,wstr #comfunc global ITsSbTaskPluginNotifySink_OnUpdateTaskStatus 7 wstr,wstr,int #comfunc global ITsSbTaskPluginNotifySink_OnReportTasks 8 wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_ITsSbTaskPluginNotifySink "{6AAF899E-C2EC-45EE-AA37-45E60895261A}" #usecom global ITsSbTaskPluginNotifySink IID_ITsSbTaskPluginNotifySink "{}" #comfunc global ITsSbTaskPluginNotifySink_OnSetTaskTime 5 wstr,int,int,int,wstr,wstr,wstr,int,sptr #comfunc global ITsSbTaskPluginNotifySink_OnDeleteTaskTime 6 wstr,wstr #comfunc global ITsSbTaskPluginNotifySink_OnUpdateTaskStatus 7 wstr,wstr,int #comfunc global ITsSbTaskPluginNotifySink_OnReportTasks 8 wstr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。