Microsoft DirectX 8.0

CMediaPosition クラス

CMediaPosition クラスの階層

IMediaPosition デュアル インターフェイスの IDispatch メソッド処理する。

このクラスは IMediaPosition インターフェイスを継承するが、それを実装してはならない。CBaseDispatch クラスと Microsoft® DirectShow® タイプ ライブラリを通して IDispatch を実装する。このクラスを直接使用してはならない。そうではなく、以下の 1 つを使用すること :

Public メソッド
CMediaPositionコンストラクタ メソッド。
IDispatch メソッド
GetIDsOfNames名前のセットを対応する DISPID のセットにマップする。
GetTypeInfoオブジェクトのタイプ情報を取得する、それは次にインターフェイスのタイプ情報を取得するために使用される。
GetTypeInfoCountオブジェクトが提供するタイプ情報インターフェイスの数を取得する。
Invokeオブジェクトが公開するプロパティとメソッドへのアクセスを提供する。

CMediaPosition::CMediaPosition

CMediaPosition クラス

コンストラクタ メソッド。

構文

CMediaPosition(
    const TCHAR *pName,
    LPUNKNOWN pUnk
);

CMediaPosition(
    const TCHAR *pName,
    LPUNKNOWN pUnk
    HRESULT *phr
);

パラメータ

pName
オブジェクトの名前へのポインタ、デバッグ用。このパラメータはスタティック メモリに割り当てられる。
pUnk
このオブジェクトの所有者へのポインタ、あるいはオブジェクトが集成されているなら NULL 。
phr
無視される。

CMediaPosition::GetIDsOfNames

CMediaPosition クラス

名前のセットを対応する 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_UNKNOWNNAME1 つあるいはそれ以上の名前が不明だった。

CMediaPosition::GetTypeInfo

CMediaPosition クラス

オブジェクトのタイプ情報を取得する、それは次にインターフェイスのタイプ情報を取得するために使用される。

構文

HRESULT GetTypeInfo(
    UINT itinfo,
    LCID lcid,
    ITypeInfo **pptinfo
);

パラメータ

itinfo
返すべきタイプ 情報。ゼロでなければならない。
lcid
ロケール識別子。
pptinfo
ITypeInfo ポインタを受け取る変数のアドレス。

戻り値

HRESULT を返す。以下のいずれかの値。

S_OK成功。
E_POINTERNULL ポインタ引数。
TYPE_E_ELEMENTNOTFOUNDitinfo パラメータはゼロであってはならない。

CMediaPosition::GetTypeInfoCount

CMediaPosition クラス

オブジェクトが提供するタイプ情報インターフェイスの数を取得する。

構文

HRESULT GetTypeInfoCount(
    UINT *pctinfo
);

パラメータ

pctinfo
オブジェクトによって提供されるタイプ情報インターフェイスの数を受け取る変数へのポインタ。メソッドが返るとき、値は 1 。

戻り値

次の値の 1 つを返す。

S_OK成功。
E_POINTERNULL ポインタ引数。

CMediaPosition::Invoke

CMediaPosition クラス

オブジェクトが公開するプロパティとメソッドへのアクセスを提供する。

構文

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_UNKNOWNINTERFACEriid パラメータが IID_NULL ではない。