ホーム › System.Mmc › IExtendTaskPad
IExtendTaskPad
COMメソッド 6
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT TaskNotify(IDataObject* pdo, VARIANT* arg, VARIANT* param2)
| pdo | IDataObject* | in | 通知の対象を表す IDataObject インターフェイスへのポインタを指定する。 |
| arg | VARIANT* | in | 実行されたタスクを識別する情報を含む VARIANT へのポインタを指定する。 |
| param2 | VARIANT* | in | 通知に固有の追加情報を含む VARIANT へのポインタを指定する。 |
vtbl 4 HRESULT EnumTasks(IDataObject* pdo, LPWSTR szTaskGroup, IEnumTASK** ppEnumTASK)
| pdo | IDataObject* | in | タスクの列挙対象を表す IDataObject インターフェイスへのポインタを指定する。 |
| szTaskGroup | LPWSTR | in | 列挙するタスクが属するタスクグループ名を指定する。 |
| ppEnumTASK | IEnumTASK** | out | タスクを列挙する IEnumTASK インターフェイスポインタを受け取る。 |
| pszGroup | LPWSTR | in | タイトルを取得する対象タスクグループ名を指定する。 |
| pszTitle | LPWSTR* | out | タスクパッドのタイトル文字列を受け取る。文字列は呼び出し側が解放する。 |
| pszGroup | LPWSTR | in | 説明文を取得する対象タスクグループ名を指定する。 |
| pszDescriptiveText | LPWSTR* | out | タスクパッドの説明テキスト文字列を受け取る。文字列は呼び出し側が解放する。 |
vtbl 7 HRESULT GetBackground(LPWSTR pszGroup, MMC_TASK_DISPLAY_OBJECT* pTDO)
| pszGroup | LPWSTR | in | 背景を取得する対象タスクグループ名を指定する。 |
| pTDO | MMC_TASK_DISPLAY_OBJECT* | out | タスクパッドの背景表示情報を受け取る MMC_TASK_DISPLAY_OBJECT 構造体へのポインタを指定する。 |
vtbl 8 HRESULT GetListPadInfo(LPWSTR pszGroup, MMC_LISTPAD_INFO* lpListPadInfo)
| pszGroup | LPWSTR | in | リストパッド情報を取得する対象タスクグループ名を指定する。 |
| lpListPadInfo | MMC_LISTPAD_INFO* | out | リストパッドの構成情報を受け取る MMC_LISTPAD_INFO 構造体へのポインタを指定する。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IExtendTaskPad "{8DEE6511-554D-11D1-9FEA-00600832DB4A}" #usecom global IExtendTaskPad IID_IExtendTaskPad "{}" #comfunc global IExtendTaskPad_TaskNotify 3 sptr,var,var #comfunc global IExtendTaskPad_EnumTasks 4 sptr,wstr,sptr #comfunc global IExtendTaskPad_GetTitle 5 wstr,var #comfunc global IExtendTaskPad_GetDescriptiveText 6 wstr,var #comfunc global IExtendTaskPad_GetBackground 7 wstr,var #comfunc global IExtendTaskPad_GetListPadInfo 8 wstr,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IExtendTaskPad "{8DEE6511-554D-11D1-9FEA-00600832DB4A}" #usecom global IExtendTaskPad IID_IExtendTaskPad "{}" #comfunc global IExtendTaskPad_TaskNotify 3 sptr,sptr,sptr #comfunc global IExtendTaskPad_EnumTasks 4 sptr,wstr,sptr #comfunc global IExtendTaskPad_GetTitle 5 wstr,sptr #comfunc global IExtendTaskPad_GetDescriptiveText 6 wstr,sptr #comfunc global IExtendTaskPad_GetBackground 7 wstr,sptr #comfunc global IExtendTaskPad_GetListPadInfo 8 wstr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。