Microsoft DirectX 8.0 |
IMediaPosition デュアル インターフェイスの IDispatch メソッド処理する。
このクラスは IMediaPosition インターフェイスを継承するが、それを実装してはならない。CBaseDispatch クラスと Microsoft® DirectShow® タイプ ライブラリを通して IDispatch を実装する。このクラスを直接使用してはならない。そうではなく、以下の 1 つを使用すること :
Public メソッド | |
---|---|
CMediaPosition | コンストラクタ メソッド。 |
IDispatch メソッド | |
GetIDsOfNames | 名前のセットを対応する DISPID のセットにマップする。 |
GetTypeInfo | オブジェクトのタイプ情報を取得する、それは次にインターフェイスのタイプ情報を取得するために使用される。 |
GetTypeInfoCount | オブジェクトが提供するタイプ情報インターフェイスの数を取得する。 |
Invoke | オブジェクトが公開するプロパティとメソッドへのアクセスを提供する。 |
コンストラクタ メソッド。
構文
CMediaPosition( const TCHAR *pName, LPUNKNOWN pUnk ); CMediaPosition( const TCHAR *pName, LPUNKNOWN pUnk HRESULT *phr );
パラメータ
- pName
- オブジェクトの名前へのポインタ、デバッグ用。このパラメータはスタティック メモリに割り当てられる。
- pUnk
- このオブジェクトの所有者へのポインタ、あるいはオブジェクトが集成されているなら NULL 。
- phr
- 無視される。
名前のセットを対応する DISPID のセットにマップする。
構文
HRESULT GetIDsOfNames( REFIID riid, OLECHAR **rgszNames, UINT cNames, LCID lcid, DISPID *rgdispid );
パラメータ
- riid
- 予約済み。IID_NULL を使用。
- rgszNames
- マップされる名前が入るワイド キャラクタ文字列の配列のアドレス。
- cNames
- rgszNames パラメータによって与えられる配列のサイズ。
- lcid
- 名前を解釈するロケール コンテキスト。NULL が可能。
- rgdispid
- DISPID を受け取る配列へのポインタ。受け取った各要素は rgszNames パラメータに渡された名前の 1 つ 1 つに対応する ID である。
戻り値
HRESULT を返す。以下のいずれかの値。
S_OK 成功。 E_OUTOFMEMORY メモリ不足。 DISP_E_UNKNOWNNAME 1 つあるいはそれ以上の名前が不明だった。
オブジェクトのタイプ情報を取得する、それは次にインターフェイスのタイプ情報を取得するために使用される。
構文
HRESULT GetTypeInfo( UINT itinfo, LCID lcid, ITypeInfo **pptinfo );
パラメータ
- itinfo
- 返すべきタイプ 情報。ゼロでなければならない。
- lcid
- ロケール識別子。
- pptinfo
- ITypeInfo ポインタを受け取る変数のアドレス。
戻り値
HRESULT を返す。以下のいずれかの値。
S_OK 成功。 E_POINTER NULL ポインタ引数。 TYPE_E_ELEMENTNOTFOUND itinfo パラメータはゼロであってはならない。
オブジェクトが提供するタイプ情報インターフェイスの数を取得する。
構文
HRESULT GetTypeInfoCount( UINT *pctinfo );
パラメータ
- pctinfo
- オブジェクトによって提供されるタイプ情報インターフェイスの数を受け取る変数へのポインタ。メソッドが返るとき、値は 1 。
戻り値
次の値の 1 つを返す。
S_OK 成功。 E_POINTER NULL ポインタ引数。
オブジェクトが公開するプロパティとメソッドへのアクセスを提供する。
構文
HRESULT Invoke( DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pdispparams, VARIANT *pvarResult, EXCEPINFO *pexcepinfo, UINT *puArgErr );
パラメータ
- dispidMember
- メンバの ID 。ディスパッチ識別子を取得するには、CMediaPosition::GetIDsOfNames を使用する。
- riid
- 将来的な使用のために予約されている。IID_NULL でなければならない。
- lcid
- 引数を解釈するロケール コンテキスト。
- wFlags
- 呼び出しのコンテキストを記述するフラグ。
- pdispparams
- 引数を入れる DIPPARAMS 構造体へのポインタ。
- pvarResult
- 結果を受け取る VARIANT へのポインタ、あるいは呼び出し元が結果を必要としないなら NULL 。
- pexcepinfo
- 例外情報を受け取る構造体へのポインタ。
- puArgErr
- エラーを起こす最初の引数のインデックスを受け取る変数へのポインタ。
戻り値
HRESULT を返す。以下のいずれかの値を含む。
S_OK 成功。 DISP_E_UNKNOWNINTERFACE riid パラメータが IID_NULL ではない。