Fonction GetIfStackTable
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
NETIOAPI_API GetIfStackTable(
_Out_ PMIB_IFSTACK_TABLE *Table
);
Paramètres
- Table [out]
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
GetIfStackTable retourne STATUS_SUCCESS si la fonction réussit.
Si la fonction échoue, GetIfStackTable retourne l’un des codes d’erreur suivants :
Code de retour | Description |
---|---|
STATUS_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 . |
STATUS_NOT_ENOUGH_MEMORY | Des ressources de mémoire insuffisantes sont disponibles pour terminer l’opération. |
STATUS_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. |
Notes
La fonction GetIfStackTable énumère les interfaces réseau physiques et logiques d’une pile d’interface sur un ordinateur 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 vers laquelle pointe 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, votre pilote doit libérer la mémoire en appelant FreeMibTable.
Notez que la structure de MIB_IFSTACK_TABLE renvoyée vers laquelle pointe 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.
Spécifications
Plateforme cible |
Universal |
Version |
Disponible dans Windows Vista et les versions ultérieures des systèmes d’exploitation Windows. |
En-tête |
Netioapi.h (inclure Netioapi.h) |
Bibliothèque |
Netio.lib |
IRQL |
< DISPATCH_LEVEL |