Microsoft DirectX 8.0

ICreateDevEnum インターフェイス

指定されたフィルタ カテゴリ内のフィルタおよびハードウェア デバイスのリストの列挙子を作成する。返される列挙子は、IEnumMoniker インターフェイスをサポートする。

システム デバイス列挙子はこのインターフェイスを公開する。同じフィルタが複数のハードウェア デバイスをサポートしている場合でも、この列挙子は、個々のハードウェア デバイスを区別する。

アプリケーションはこのインターフェイスを使って、ハードウェア デバイスに対応するフィルタのインスタンスを見つけることができる。まず、システム デバイス列挙子のインスタンスを作成し、次に、それを使って特定のカテゴリのデバイス用の列挙子を作成する。詳細については、「デバイスとフィルタの列挙」を参照すること。

列挙子の使い方の詳細については、Platform SDK のドキュメントの「IEnumXXXX」を参照すること。

vtable 順のメソッド

IUnknown メソッド説明
QueryInterface サポートされているインターフェイスへのポインタを取得する。
AddRef 参照カウントをインクリメントする。
Release 参照カウントをデクリメントする。
ICreateDevEnum メソッド説明
CreateClassEnumerator 指定されたカテゴリのクラス列挙子を作成する。

ICreateDevEnum::CreateClassEnumerator

ICreateDevEnum インターフェイス

指定されたタイプのオブジェクトの列挙子を作成する。

構文

HRESULT CreateClassEnumerator(

  REFCLSID clsidDeviceClass,
  IEnumMoniker **ppEnumMoniker,
  DWORD dwFlags
  );

パラメータ

clsidDeviceClass
[in] 列挙するデバイスのタイプを指定する REFCLSID 値。(「フィルタ カテゴリ」を参照すること。)
ppEnumMoniker
[out] 新しいクラス列挙子によって実装される Win32 IEnumMoniker (または派生) インターフェイスへのポインタのアドレス。
dwFlags
[in] 予約済み。0 でなければならない。

戻り値

次のいずれかの値を返す。
NOERROR 成功。
S_OK 成功。
E_OUTOFMEMORY クラス列挙子を作成するのに十分なメモリが利用できない。
S_FALSE clsidDeviceClass によって指定されたカテゴリが存在しない。

注意

デバイスが見つからない場合、メソッドは、要素の数がゼロのモニカを返す代わりに、モニカを返さない。

新しいクラス列挙子は、このメソッドを呼び出したクラスと同じプロセスで動作する非集成オブジェクトである。