IMediaEventEx::SetNotifyWindow
SetNotifyWindow メソッドは、イベント通知を処理するウィンドウを登録する。
構文
HRESULT SetNotifyWindow(
OAHWND hwnd,
long lMsg,
long lInstanceData
);
パラメータ
hwnd
[in] ウィンドウのハンドル。または、イベント メッセージの受け取りを停止するには NULL。
lMsg
[in] 通知として渡すウィンドウ メッセージ。
lInstanceData
[in] lMsg メッセージの lParam 引数として渡す値。
戻り値
成功した場合は S_OK を返す。hwnd 引数が有効なウィンドウ ハンドルでない場合は、E_INVALIDARG を返す。
注意
このメソッドはイベント通知を処理するウィンドウを指示する。フィルタ グラフ マネージャがイベントをイベント キューに入れるたびに、指定したウィンドウにメッセージも送る。hwnd 引数はウィンドウを指定し、lMsg 引数はメッセージを指定する。この目的のため、アプリケーションはプライベート ウィンドウ メッセージを定義する必要がある。メッセージの lParam 引数には lInstanceData の値が設定され、wParam 引数はゼロに設定される。
ウィンドウがメッセージを受け取ったら、IMediaEvent::GetEvent メソッドを呼び出してイベントを取得する必要がある。イベントは非同期なので、キューには複数の (あるいはゼロの) イベントが入っている可能性がある。GetEvent がエラーコードを返すまで繰り返し呼び出すこと。
参照