Partager via


Fonction MgmGetNextMfe (mgm.h)

La fonction MgmGetNextMfe récupère un ou plusieurs MFM. Le gestionnaire de table de routage commence à récupérer les MFP en commençant par le MFE qui suit le MFE spécifié. La fonction peut récupérer zéro, une ou plusieurs MFM. Le nombre d’EFP retournés dépend de la taille des MFP et de la taille de la mémoire tampon fournie par le client lorsque la fonction est appelée.

Les données retournées dans la mémoire tampon sont d’abord triées par groupe, puis par les sources au sein d’un groupe.

Syntaxe

DWORD MgmGetNextMfe(
  [in]      PMIB_IPMCAST_MFE pimmStart,
  [in, out] PDWORD           pdwBufferSize,
  [in, out] PBYTE            pbBuffer,
  [in, out] PDWORD           pdwNumEntries
);

Paramètres

[in] pimmStart

Pointeur vers une structure de MIB_IPMCAST_MFE qui spécifie à partir duquel commencer à récupérer les MFP. Les membres dwSource et dwGroup de la structure MIB_IPMCAST_MFE identifient un MFE. Spécifiez la source et le groupe du dernier MFE retourné par l’appel précédent à MgmGetFirstMfe ou MgmGetNextMfe.

[in, out] pdwBufferSize

En entrée, pdwBufferSize est un pointeur vers un emplacement mémoire de taille DWORD contenant la taille, en octets, de pbBuffer.

Lors de la sortie, si la valeur de retour est ERROR_INSUFFICIENT_BUFFER, pdwBufferSize reçoit la taille minimale pbBuffer doit être pour contenir le MFE ; sinon, la valeur de pdwBufferSize reste inchangée.

[in, out] pbBuffer

Lors de l’entrée, le client doit fournir un pointeur vers une mémoire tampon.

Sur la sortie, pbBuffer contient un ou plusieurs MFP. Chaque MFE est une structure MIB_IPMCAST_MFE .

[in, out] pdwNumEntries

Lors de l’entrée, le client doit fournir un pointeur vers un emplacement mémoire de taille DWORD.

Lors de la sortie, pdwNumEntries reçoit le nombre d’EPF contenues dans pbBuffer.

Valeur retournée

Si la fonction réussit, la valeur de retour est NO_ERROR.

Si la fonction échoue, la valeur de retour est l’un des codes d’erreur suivants.

Valeur Signification
ERROR_CAN_NOT_COMPLETE
Impossible de terminer l’appel à cette fonction.
ERROR_INSUFFICIENT_BUFFER
La mémoire tampon spécifiée est trop petite pour ne même qu’un seul MFE. Le client doit case activée la valeur de pdwBufferSize pour la taille de mémoire tampon minimale requise pour récupérer un objet MFE.
ERROR_MORE_DATA
D’autres MFP sont disponibles.
ERROR_NO_MORE_ITEMS
Plus aucune MFP n’est disponible. Zéro ou plusieurs MFP ont été retournés ; case activée la valeur de pdwNumEntries pour vérifier le nombre de MFP retournées.

Remarques

Cette fonction est utilisée pour poursuivre la récupération séquentielle des MFP ; utilisez MgmGetFirstMfe pour démarrer le processus de récupération.

En général, pour récupérer des MFP, appelez d’abord MgmGetFirstMfe. Ensuite, appelez MgmGetNextMfe une ou plusieurs fois, jusqu’à ce qu’il n’y ait plus de MFP à retourner. Chaque appel à MgmGetNextMfe doit commencer après le dernier MFE retourné par l’appel précédent à MgmGetNextMfe (ou l’appel initial à MgmGetFirstMfe). Pour ce faire, le client spécifie la dernière source et le dernier groupe dans la mémoire tampon retournée par un appel précédent.

Note La taille minimale de la mémoire tampon pointée vers pbBuffer n’est pas fixe ; il est différent pour chaque MFE. Utilisez la macro sizeof(MIB_IPMCAST_MFE) pour déterminer la taille de chaque MFE retournée dans la mémoire tampon.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête mgm.h
Bibliothèque Rtm.lib
DLL Rtm.dll

Voir aussi

MIB_IPMCAST_MFE

MgmGetFirstMfe

MgmGetMfe