GetIpForwardEntry2, fonction (netioapi.h)
La fonction GetIpForwardEntry2 récupère les informations d’une entrée d’itinéraire IP sur l’ordinateur local.
Syntaxe
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIpForwardEntry2(
[in, out] PMIB_IPFORWARD_ROW2 Row
);
Paramètres
[in, out] Row
Pointeur vers une entrée de structure MIB_IPFORWARD_ROW2 pour une entrée de route IP. En cas de retour réussi, cette structure est mise à jour avec les propriétés de l’entrée d’itinéraire IP.
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 |
---|---|
|
Un paramètre non valide a été transmis à la fonction. Cette erreur est retournée si un pointeur NULL est transmis dans le paramètre Row , si le membre DestinationPrefix du MIB_IPFORWARD_ROW2 pointé par le paramètre Row n’a pas été spécifié, si le membre NextHop du MIB_IPFORWARD_ROW2 pointé par le paramètre Row n’a pas été spécifié, ou les deux membres InterfaceLuid ou InterfaceIndex du MIB_IPFORWARD_ROW2 pointés par la ligne le paramètre n’a pas été spécifié. |
|
Element not found. Cette erreur est retournée si l’interface réseau spécifiée par le membre InterfaceLuid ou InterfaceIndex de la structure MIB_IPFORWARD_ROW2 pointée par le paramètre Row ne correspond pas au préfixe d’adresse IP et à la famille d’adresses spécifiés dans le membre DestinationPrefix de la structure MIB_IPFORWARD_ROW2 . |
|
La demande n'est pas prise en charge. Cette erreur est retournée si aucune pile IPv4 ne se trouve sur l’ordinateur local et AF_INET a été spécifié dans la famille d’adresses dans le membre DestinationPrefix du MIB_IPFORWARD_ROW2 pointé par le paramètre Row . Cette erreur est également retournée si aucune pile IPv6 ne se trouve sur l’ordinateur local et AF_INET6 a été spécifié pour la famille d’adresses dans le membre DestinationPrefix . |
|
Utilisez FormatMessage pour obtenir la chaîne de message de l’erreur retournée. |
Remarques
La fonction GetIpForwardEntry2 est définie sur Windows Vista et versions ultérieures.
La fonction GetIpForwardEntry2 est utilisée pour récupérer une entrée de structure MIB_IPFORWARD_ROW2 .
Lors de l’entrée, le membre DestinationPrefix dans la structure MIB_IPFORWARD_ROW2 pointée par le paramètre Row doit être initialisé vers un préfixe d’adresse IPv4 ou IPv6 valide et une famille. Lors de l’entrée, le membre NextHop dans la structure MIB_IPFORWARD_ROW2 pointée par le paramètre Row doit être initialisé vers une adresse IPv4 ou IPv6 et une famille valides. En outre, au moins un des membres suivants dans la structure MIB_IPFORWARD_ROW2 pointant vers le paramètre Row doit être initialisé : InterfaceLuid ou InterfaceIndex.
Les champs sont utilisés dans l’ordre indiqué ci-dessus. Ainsi, si l’InterfaceLuid est spécifié, ce membre est utilisé pour déterminer l’interface. Si aucune valeur n’a été définie pour le membre InterfaceLuid (les valeurs de ce membre ont été définies sur zéro), le membre InterfaceIndex est ensuite utilisé pour déterminer l’interface.
Lors de la sortie lorsque l’appel réussit, GetIpForwardEntry2 récupère les autres propriétés de l’entrée d’itinéraire IP et remplit la structure MIB_IPFORWARD_ROW2 pointée par le paramètre Row .
Le décalage de la métrique d’itinéraire spécifié dans le membre Métrique de la structure MIB_IPFORWARD_ROW2 pointée par le paramètre Row ne représente qu’une partie de la métrique de routage complète. La métrique complète est une combinaison de cette métrique d’itinéraire ajoutée à la métrique d’interface spécifiée dans le membre Métrique de la structure MIB_IPINTERFACE_ROW de l’interface associée. Une application peut récupérer la métrique d’interface en appelant la fonction GetIpInterfaceEntry .
La fonction GetIpForwardTable2 peut être appelée pour énumérer les entrées d’itinéraire IP sur un ordinateur local.
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 (include Iphlpapi.h) |
Bibliothèque | Iphlpapi.lib |
DLL | Iphlpapi.dll |