Partager via


IEnumRegFilters ::Next, méthode (strmif.h)

[La fonctionnalité associée à cette page, DirectShow, est une fonctionnalité héritée. Il a été remplacé par MediaPlayer, IMFMediaEngine et Audio/Video Capture in Media Foundation. Ces fonctionnalités ont été optimisées pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise MediaPlayer, IMFMediaEngine et Audio/Video Capture dans Media Foundation au lieu de DirectShow, si possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

NoteL’interface IEnumRegFilters est déconseillée.
 
Remplit le tableau avec des descriptions de l’ensemble de filtres suivant (spécifié par le paramètre cFilters ) qui répondent aux exigences spécifiées lors de la création de l’énumérateur.

Syntaxe

HRESULT Next(
  [in]  ULONG     cFilters,
  [out] REGFILTER **apRegFilter,
  [out] ULONG     *pcFetched
);

Paramètres

[in] cFilters

Nombre de filtres.

[out] apRegFilter

Adresse d’un pointeur vers un tableau de pointeurs REGFILTER .

[out] pcFetched

Pointeur vers le nombre réel de filtres passés.

Valeur retournée

Retourne l’une des valeurs HRESULT suivantes.

Code de retour Description
E_INVALIDARG
Argument non valide.
E_OUTOFMEMORY
Mémoire insuffisante.
E_POINTER
Argument pointeur NULL .
E_UNEXPECTED
Erreur inattendue.
S_FALSE
Moins de filtres ont été récupérés que demandés.
S_OK
Réussite.
VFW_E_ENUM_OUT_OF_SYNC
L’énumérateur n’est plus valide. Pour plus d'informations, consultez la section Notes.

Remarques

L’application appelante doit utiliser la fonction Microsoft Win32 CoTaskMemFree pour libérer chaque pointeur REGFILTER retourné dans le tableau. Ne libérez pas le membre Name de la structure REGFILTER séparément, car IEnumRegFilters::Next alloue de la mémoire pour cette chaîne dans le cadre de la structure REGFILTER .

Si le nombre de filtres inscrits change, l’état de l’énumérateur ne sera plus cohérent avec l’état du Registre. Par conséquent, cette méthode retourne VFW_E_ENUM_OUT_OF_SYNC. Vous devez ignorer toutes les données obtenues à partir des appels précédents à l’énumérateur, car elles peuvent ne pas être valides, et mettre à jour l’énumérateur en appelant la méthode Reset . Vous pouvez ensuite appeler la Next méthode en toute sécurité.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête strmif.h (include Dshow.h)

Voir aussi

Codes d’erreur et de réussite

IEnumRegFilters, interface