Partager via


GetIfStackTable, fonction (netioapi.h)

La fonction GetIfStackTable récupère une table d’entrées de ligne de pile d’interface réseau qui spécifient la relation des interfaces réseau sur une pile d’interface.

Syntaxe

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIfStackTable(
  [out] PMIB_IFSTACK_TABLE *Table
);

Paramètres

[out] Table

Pointeur vers une mémoire tampon qui reçoit la table des entrées de ligne de pile d’interface dans une structure MIB_IFSTACK_TABLE .

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.

Code de retour Description
ERROR_INVALID_PARAMETER
Un paramètre non valide a été transmis à la fonction. Cette erreur est retournée si un pointeur NULL est passé dans le paramètre Table .
ERROR_NOT_ENOUGH_MEMORY
Des ressources de mémoire insuffisantes sont disponibles pour terminer l’opération.
ERROR_NOT_FOUND
Aucune entrée de pile d’interface n’a été trouvée.
Autres
Utilisez la fonction FormatMessage pour obtenir la chaîne de message pour l’erreur retournée.

Remarques

La fonction GetIfStackTable est définie sur Windows Vista et versions ultérieures.

The
La fonction GetIfStackTable énumère les interfaces réseau physiques et logiques d’une pile d’interfaces sur un système local et retourne ces informations dans une structure MIB_IFSTACK_TABLE .

Les entrées de pile d’interface sont retournées dans une structure MIB_IFSTACK_TABLE dans la mémoire tampon pointée par le paramètre Table . La structure MIB_IFSTACK_TABLE contient un nombre d’entrées de pile d’interface et un tableau de structures MIB_IFSTACK_ROW pour chaque entrée de pile d’interface.

La relation entre les interfaces de la pile d’interfaces est que l’interface avec index dans le membre HigherLayerInterfaceIndex de la structure MIB_IFSTACK_ROW se trouve immédiatement au-dessus de l’interface avec index dans le membre LowerLayerInterfaceIndex de la structure MIB_IFSTACK_ROW .

La mémoire est allouée par la fonction GetIfStackTable pour la structure MIB_IFSTACK_TABLE et les entrées MIB_IFSTACK_ROW dans cette structure. Lorsque ces structures retournées ne sont plus nécessaires, libérez la mémoire en appelant FreeMibTable.

Notez que la structure de MIB_IFSTACK_TABLE renvoyée pointée par le paramètre Table peut contenir un remplissage pour l’alignement entre le membre NumEntries et la première entrée de tableau MIB_IFSTACK_ROW dans le membre Table de la structure MIB_IFSTACK_TABLE . Le remplissage pour l’alignement peut également être présent entre les entrées de tableau MIB_IFSTACK_ROW . Tout accès à une entrée de tableau MIB_IFSTACK_ROW doit supposer que le remplissage peut exister.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête netioapi.h (inclure Iphlpapi.h)
Bibliothèque Iphlpapi.lib
DLL Iphlpapi.dll

Voir aussi

FreeMibTable

GetIfEntry2

GetIfTable2

GetInvertedIfStackTable

GetIpInterfaceEntry

InitializeIpInterfaceEntry

MIB_IFSTACK_ROW

MIB_IFSTACK_TABLE

MIB_IF_ROW2

MIB_IF_TABLE2

MIB_INVERTEDIFSTACK_ROW

MIB_INVERTEDIFSTACK_TABLE

MIB_IPINTERFACE_ROW

NotifyIpInterfaceChange

SetIpInterfaceEntry