ホーム › Media.PictureAcquisition › IPhotoAcquirePlugin
IPhotoAcquirePlugin
COMメソッド 4
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT Initialize(IPhotoAcquireSource* pPhotoAcquireSource, IPhotoAcquireProgressCB* pPhotoAcquireProgressCB)
| pPhotoAcquireSource | IPhotoAcquireSource* | inoptional | 処理対象の取得元を示すIPhotoAcquireSourceポインタ。 |
| pPhotoAcquireProgressCB | IPhotoAcquireProgressCB* | inoptional | 進捗通知に用いるIPhotoAcquireProgressCBポインタ。 |
vtbl 4 HRESULT ProcessItem(DWORD dwAcquireStage, IPhotoAcquireItem* pPhotoAcquireItem, IStream* pOriginalItemStream, LPWSTR pszFinalFilename, IPropertyStore* pPropertyStore)
| dwAcquireStage | DWORD | in | 処理段階を示すPHOTOACQ_*ステージ値。 |
| pPhotoAcquireItem | IPhotoAcquireItem* | inoptional | 処理対象アイテムのIPhotoAcquireItemポインタ。 |
| pOriginalItemStream | IStream* | inoptional | 元アイテムデータを読むIStreamポインタ。 |
| pszFinalFilename | LPWSTR | in | 保存先となる最終ファイル名。 |
| pPropertyStore | IPropertyStore* | inoptional | アイテムのプロパティを操作するIPropertyStoreポインタ。 |
| hr | HRESULT | in | 転送処理全体の結果を示すHRESULT。 |
| hWndParent | HWND | in | 設定ダイアログの親となるウィンドウハンドル。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IPhotoAcquirePlugin "{00F2DCEB-ECB8-4F77-8E47-E7A987C83DD0}"
#usecom global IPhotoAcquirePlugin IID_IPhotoAcquirePlugin "{}"
#comfunc global IPhotoAcquirePlugin_Initialize 3 sptr,sptr
#comfunc global IPhotoAcquirePlugin_ProcessItem 4 int,sptr,sptr,wstr,sptr
#comfunc global IPhotoAcquirePlugin_TransferComplete 5 int
#comfunc global IPhotoAcquirePlugin_DisplayConfigureDialog 6 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。