Win32 API 日本語リファレンス
ホームNetworking.BackgroundIntelligentTransferService › IBackgroundCopyManager

IBackgroundCopyManager

COM
IID5ce34c0d-0dc9-4c1f-897c-daa1b78cee7c継承元IUnknown自前メソッド開始 vtbl3

メソッド 4

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

vtbl 3 HRESULT CreateJob(LPWSTR DisplayName, BG_JOB_TYPE Type, GUID* pJobId, IBackgroundCopyJob** ppJob)
DisplayNameLPWSTRin新規ジョブに付与する表示名。
TypeBG_JOB_TYPEin作成するジョブの種別BG_JOB_TYPE(DOWNLOAD/UPLOAD/UPLOAD_REPLY)。
pJobIdGUID*out生成されたジョブのGUIDを受け取る出力ポインタ。
ppJobIBackgroundCopyJob**out作成されたジョブのIBackgroundCopyJobを受け取る出力ポインタ。
vtbl 4 HRESULT GetJob(GUID* jobID, IBackgroundCopyJob** ppJob)
jobIDGUID*in取得対象ジョブのGUID。
ppJobIBackgroundCopyJob**out取得したジョブのIBackgroundCopyJobを受け取る出力ポインタ。
vtbl 5 HRESULT EnumJobs(DWORD dwFlags, IEnumBackgroundCopyJobs** ppEnum)
dwFlagsDWORDin列挙範囲を示すフラグ。0で現ユーザー、BG_JOB_ENUM_ALL_USERSで全ユーザー。
ppEnumIEnumBackgroundCopyJobs**outジョブを列挙するIEnumBackgroundCopyJobsを受け取る出力ポインタ。
vtbl 6 HRESULT GetErrorDescription(HRESULT hResult, DWORD LanguageId, LPWSTR* pErrorDescription)
hResultHRESULTin説明文を取得する対象のエラーHRESULT。
LanguageIdDWORDin説明文を取得する言語ID(LANGID)。
pErrorDescriptionLPWSTR*outローカライズされたエラー説明文を受け取る出力ポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_IBackgroundCopyManager "{5CE34C0D-0DC9-4C1F-897C-DAA1B78CEE7C}"
#usecom global IBackgroundCopyManager IID_IBackgroundCopyManager "{4991D34B-80A1-4291-83B6-3328366B9097}"
#comfunc global IBackgroundCopyManager_CreateJob            3 wstr,int,var,sptr
#comfunc global IBackgroundCopyManager_GetJob               4 var,sptr
#comfunc global IBackgroundCopyManager_EnumJobs             5 int,sptr
#comfunc global IBackgroundCopyManager_GetErrorDescription  6 int,int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。