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

IDBAsynchNotify

COM
IID0c733a96-2a1c-11ce-ade5-00aa0044773d継承元IUnknown自前メソッド開始 vtbl3

メソッド 3

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

vtbl 3 HRESULT OnLowResource(UINT_PTR dwReserved)
dwReservedUINT_PTRin予約済みであり、0 を指定する。
vtbl 4 HRESULT OnProgress(UINT_PTR hChapter, DWORD eOperation, UINT_PTR ulProgress, UINT_PTR ulProgressMax, DWORD eAsynchPhase, LPWSTR pwszStatusText)
hChapterUINT_PTRin対象となるチャプターのハンドルを指定する。チャプター単位でない場合は DB_NULL_HCHAPTER を指定する。
eOperationDWORDin進捗報告の対象となる非同期操作の種類 (DBASYNCHOP) を指定する。
ulProgressUINT_PTRin現在の進捗量を ulProgressMax に対する相対値として指定する。
ulProgressMaxUINT_PTRin進捗の最大値 (完了時の値) を指定する。
eAsynchPhaseDWORDin操作の現在のフェーズ (DBASYNCHPHASE。初期化・取得・完了等) を指定する。
pwszStatusTextLPWSTRinoptional現在の状態を示すテキストへのポインタである。テキストが無い場合は NULL となる。
vtbl 5 HRESULT OnStop(UINT_PTR hChapter, DWORD eOperation, HRESULT hrStatus, LPWSTR pwszStatusText)
hChapterUINT_PTRin停止した操作の対象チャプターのハンドルを指定する。チャプター単位でない場合は DB_NULL_HCHAPTER を指定する。
eOperationDWORDin停止した非同期操作の種類 (DBASYNCHOP) を指定する。
hrStatusHRESULTin操作の終了状態を示す HRESULT を指定する。正常終了か中断かを表す。
pwszStatusTextLPWSTRinoptional停止理由等を示す状態テキストへのポインタである。テキストが無い場合は NULL となる。

HSP用 COM定義

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

#define global IID_IDBAsynchNotify "{0C733A96-2A1C-11CE-ADE5-00AA0044773D}"
#usecom global IDBAsynchNotify IID_IDBAsynchNotify "{}"
#comfunc global IDBAsynchNotify_OnLowResource  3 sptr
#comfunc global IDBAsynchNotify_OnProgress     4 sptr,int,sptr,sptr,int,wstr
#comfunc global IDBAsynchNotify_OnStop         5 sptr,int,int,wstr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。