ホーム › Networking.BackgroundIntelligentTransferService › IBackgroundCopyGroup
IBackgroundCopyGroup
COMメソッド 15
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| propID | GROUPPROP | in | 取得対象のグループプロパティを識別するGROUPPROP列挙値。 |
| pvarVal | VARIANT* | out | 取得したプロパティ値を受け取るVARIANTポインタ。 |
| propID | GROUPPROP | in | 設定対象のグループプロパティを識別するGROUPPROP列挙値。 |
| pvarVal | VARIANT* | in | 設定する値を保持するVARIANTポインタ。 |
| dwFlags | DWORD | in | 取得する進捗情報の種類を指定するフラグ。 |
| pdwProgress | DWORD* | out | グループの進捗状況を受け取る出力ポインタ。 |
| pdwStatus | DWORD* | out | グループの現在の状態コードを受け取る出力ポインタ。 |
| pdwJobIndex | DWORD* | out | 状態に関連するジョブのインデックスを受け取る出力ポインタ。 |
vtbl 7 HRESULT GetJob(GUID jobID, IBackgroundCopyJob1** ppJob)
| jobID | GUID | in | 取得するジョブを識別するGUID。 |
| ppJob | IBackgroundCopyJob1** | out | 指定IDのジョブを表すIBackgroundCopyJob1インターフェイスを受け取る出力ポインタ。 |
vtbl 8 HRESULT SuspendGroup()
vtbl 9 HRESULT ResumeGroup()
vtbl 10 HRESULT CancelGroup()
| pdwSize | DWORD* | out | グループに含まれるジョブ数を受け取る出力ポインタ。 |
vtbl 12 HRESULT get_GroupID(GUID* pguidGroupID)
| pguidGroupID | GUID* | out | グループを一意に識別するGUIDを受け取る出力ポインタ。 |
vtbl 13 HRESULT CreateJob(GUID guidJobID, IBackgroundCopyJob1** ppJob)
| guidJobID | GUID | in | 新規ジョブに割り当てるGUID。 |
| ppJob | IBackgroundCopyJob1** | out | 生成されたIBackgroundCopyJob1インターフェイスを受け取る出力ポインタ。 |
vtbl 14 HRESULT EnumJobs(DWORD dwFlags, IEnumBackgroundCopyJobs1** ppEnumJobs)
| dwFlags | DWORD | in | 列挙対象を絞り込むためのフラグ。 |
| ppEnumJobs | IEnumBackgroundCopyJobs1** | out | ジョブを列挙するIEnumBackgroundCopyJobs1インターフェイスを受け取る出力ポインタ。 |
vtbl 15 HRESULT SwitchToForeground()
| iid | GUID* | in | 新しいジョブインターフェイスの識別子(IID)へのポインタ。 |
| pUnk | IUnknown** | out | 要求したインターフェイスを実装するオブジェクトを受け取る出力ポインタ。 |
| iid | GUID* | in | 通知コールバックインターフェイスの識別子(IID)へのポインタ。 |
| pUnk | IUnknown* | in | 通知を受け取るコールバックオブジェクトのIUnknownポインタ。NULLで解除可能。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IBackgroundCopyGroup "{1DED80A7-53EA-424F-8A04-17FEA9ADC4F5}" #usecom global IBackgroundCopyGroup IID_IBackgroundCopyGroup "{}" #comfunc global IBackgroundCopyGroup_GetProp 3 int,var #comfunc global IBackgroundCopyGroup_SetProp 4 int,var #comfunc global IBackgroundCopyGroup_GetProgress 5 int,var #comfunc global IBackgroundCopyGroup_GetStatus 6 var,var #comfunc global IBackgroundCopyGroup_GetJob 7 int,sptr #comfunc global IBackgroundCopyGroup_SuspendGroup 8 #comfunc global IBackgroundCopyGroup_ResumeGroup 9 #comfunc global IBackgroundCopyGroup_CancelGroup 10 #comfunc global IBackgroundCopyGroup_get_Size 11 var #comfunc global IBackgroundCopyGroup_get_GroupID 12 var #comfunc global IBackgroundCopyGroup_CreateJob 13 int,sptr #comfunc global IBackgroundCopyGroup_EnumJobs 14 int,sptr #comfunc global IBackgroundCopyGroup_SwitchToForeground 15 #comfunc global IBackgroundCopyGroup_QueryNewJobInterface 16 var,sptr #comfunc global IBackgroundCopyGroup_SetNotificationPointer 17 var,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IBackgroundCopyGroup "{1DED80A7-53EA-424F-8A04-17FEA9ADC4F5}" #usecom global IBackgroundCopyGroup IID_IBackgroundCopyGroup "{}" #comfunc global IBackgroundCopyGroup_GetProp 3 int,sptr #comfunc global IBackgroundCopyGroup_SetProp 4 int,sptr #comfunc global IBackgroundCopyGroup_GetProgress 5 int,sptr #comfunc global IBackgroundCopyGroup_GetStatus 6 sptr,sptr #comfunc global IBackgroundCopyGroup_GetJob 7 int,sptr #comfunc global IBackgroundCopyGroup_SuspendGroup 8 #comfunc global IBackgroundCopyGroup_ResumeGroup 9 #comfunc global IBackgroundCopyGroup_CancelGroup 10 #comfunc global IBackgroundCopyGroup_get_Size 11 sptr #comfunc global IBackgroundCopyGroup_get_GroupID 12 sptr #comfunc global IBackgroundCopyGroup_CreateJob 13 int,sptr #comfunc global IBackgroundCopyGroup_EnumJobs 14 int,sptr #comfunc global IBackgroundCopyGroup_SwitchToForeground 15 #comfunc global IBackgroundCopyGroup_QueryNewJobInterface 16 sptr,sptr #comfunc global IBackgroundCopyGroup_SetNotificationPointer 17 sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。