Metode ICreateDevEnum::CreateClassEnumerator (strmif.h)
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Pengambilan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine , dan Pengambilan Audio/Video di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]
Metode CreateClassEnumerator membuat enumerator untuk kategori perangkat tertentu.
Sintaks
HRESULT CreateClassEnumerator(
[in] REFCLSID clsidDeviceClass,
[out] IEnumMoniker **ppEnumMoniker,
[in] DWORD dwFlags
);
Parameter
[in] clsidDeviceClass
Menentukan pengidentifikasi kelas (CLSID) dari kategori perangkat. Lihat Kategori Filter.
[out] ppEnumMoniker
Menerima penunjuk ke antarmuka IEnumMoniker . Pemanggil harus merilis antarmuka.
[in] dwFlags
Kombinasi bitwise dari nol atau lebih bendera. Jika nol, metode menghitung setiap filter dalam kategori. Jika ada bendera yang diatur, enumerasi hanya menyertakan filter yang cocok dengan bendera yang ditentukan. Bendera berikut didefinisikan:
Bendera | Deskripsi |
---|---|
CDEF_DEVMON_CMGR_DEVICE | Hitung codec audio atau video, menggunakan manajer kompresi audio (ACM) atau manajer kompresi video (VCM). |
CDEF_DEVMON_DMO | Menghitung Objek Media DirectX (DMO). |
CDEF_DEVMON_FILTER | Menghitung filter DirectShow asli. |
CDEF_DEVMON_PNP_DEVICE | Menghitung perangkat keras Plug and Play. |
Mengembalikan nilai
Mengembalikan salah satu nilai HRESULT berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Berhasil. |
|
Kehabisan memori. |
|
Kategori yang ditentukan oleh clsidDeviceClass tidak ada atau kosong. |
|
Argumen pointer NULL. |
Keterangan
Jika kategori tidak ada atau kosong, nilai yang dikembalikan S_FALSE, dan parameter ppEnumMoniker menerima nilai NULL. Oleh karena itu, uji nilai yang dikembalikan S_OK alih-alih menggunakan makro BERHASIL :
C++ |
---|
IEnumMoniker *pEnum = NULL; hr = pSysDevEnum->CreateClassEnumerator( CLSID_VideoCompressorCategory, &pEnum, 0); if (hr == S_OK) { // Safe to dereference pEnum. pEnum->Release(); } |
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | strmif.h (termasuk Dshow.h) |
Pustaka | Strmiids.lib |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk