Win32 API 日本語リファレンス
ホームMedia.DirectShow › IAMVfwCaptureDialogs

IAMVfwCaptureDialogs

COM
IIDd8d715a0-6e5e-11d0-b3f0-00aa003761c5継承元IUnknown自前メソッド開始 vtbl3

メソッド 3

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

vtbl 3 HRESULT HasDialog(INT iDialog)
iDialogINTin表示可否を問い合わせる対象ダイアログの種別。VfwCaptureDialog列挙(Source/Format/Display)で指定する。
vtbl 4 HRESULT ShowDialog(INT iDialog, HWND hwnd)
iDialogINTin表示するVFWドライバダイアログの種別。VfwCaptureDialog列挙値で指定する。
hwndHWNDinダイアログの親となるウィンドウのハンドル。NULL指定も可能。
vtbl 5 HRESULT SendDriverMessage(INT iDialog, INT uMsg, INT dw1, INT dw2)
iDialogINTinメッセージ送信先のダイアログ種別。VfwCaptureDialog列挙値で指定する。
uMsgINTinVFWキャプチャドライバへ送るドライバメッセージの識別子。
dw1INTinドライバメッセージの第1パラメータ。メッセージ依存の値を渡す。
dw2INTinドライバメッセージの第2パラメータ。メッセージ依存の値を渡す。

HSP用 COM定義

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

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