ICreateDevEnum::CreateClassEnumerator, méthode (strmif.h)
La méthode CreateClassEnumerator crée un énumérateur pour une catégorie d’appareil spécifiée.
Syntaxe
HRESULT CreateClassEnumerator(
[in] REFCLSID clsidDeviceClass,
[out] IEnumMoniker **ppEnumMoniker,
[in] DWORD dwFlags
);
Paramètres
[in] clsidDeviceClass
Spécifie l’identificateur de classe (CLSID) de la catégorie d’appareil. Voir Catégories de filtres.
[out] ppEnumMoniker
Reçoit un pointeur vers l’interface IEnumMoniker . L’appelant doit libérer l’interface.
[in] dwFlags
Combinaison au niveau du bit de zéro ou plusieurs indicateurs. Si zéro, la méthode énumère chaque filtre dans la catégorie. Si des indicateurs sont définis, l’énumération inclut uniquement les filtres qui correspondent aux indicateurs spécifiés. Les indicateurs suivants sont définis :
Indicateur | Description |
---|---|
CDEF_DEVMON_CMGR_DEVICE | Énumérez les codecs audio ou vidéo, à l’aide du gestionnaire de compression audio (ACM) ou du gestionnaire de compression vidéo (VCM). |
CDEF_DEVMON_DMO | Énumérer les objets multimédias DirectX (DMO). |
CDEF_DEVMON_FILTER | Énumérer les filtres DirectShow natifs. |
CDEF_DEVMON_PNP_DEVICE | Énumérez Plug-and-Play périphériques matériels. |
Valeur retournée
Retourne l’une des valeurs HRESULT suivantes.
Code de retour | Description |
---|---|
|
Réussite. |
|
Mémoire insuffisante. |
|
La catégorie spécifiée par clsidDeviceClass n’existe pas ou n’est pas vide. |
|
Argument de pointeur NULL. |
Notes
Si la catégorie n’existe pas ou est vide, la valeur de retour est S_FALSE, et le paramètre ppEnumMoniker reçoit la valeur NULL. Par conséquent, testez la valeur de retour S_OK au lieu d’utiliser la macro SUCCEEDED :
C++ |
---|
IEnumMoniker *pEnum = NULL; hr = pSysDevEnum->CreateClassEnumerator( CLSID_VideoCompressorCategory, &pEnum, 0); if (hr == S_OK) { // Safe to dereference pEnum. pEnum->Release(); } |
Configuration requise
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | strmif.h (include Dshow.h) |
Bibliothèque | Strmiids.lib |