Partager via


SetIpNetEntry2, fonction

La fonction SetIpNetEntry2 définit l’adresse physique d’une entrée d’adresse IP voisine existante sur un ordinateur local.

Syntaxe

NETIOAPI_API SetIpNetEntry2(
  _In_ PMIB_IPNET_ROW2 Row
);

Paramètres

Valeur retournée

SetIpNetEntry2 retourne STATUS_SUCCESS si la fonction réussit.

Si la fonction échoue, SetIpNetEntry2 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 dans les situations suivantes.

  • Un pointeur NULL a été passé dans le paramètre Row .

  • Le membre Address du MIB_IPNET_ROW2 structure vers laquelle le paramètre Row pointe n’a pas été défini sur une adresse IPv4 ou IPv6 de monodiffusion, anycast ou multidiffusion valide.

  • Les membres PhysicalAddress et PhysicalAddressLength de la structure MIB_IPNET_ROW2 n’ont pas été définis sur une adresse physique valide.

  • Les membres InterfaceLuid et InterfaceIndex de la structure MIB_IPNET_ROW2 n’ont pas été spécifiés.

  • Une adresse de bouclage a été passée dans le membre Address .

STATUS_NOT_FOUND

L’interface spécifiée est introuvable. Cette erreur est retournée si la fonction ne trouve pas l’interface réseau spécifiée par le membre InterfaceLuid ou InterfaceIndex de la structure MIB_IPNET_ROW2 vers laquelle pointe le paramètre Row .

STATUS_NOT_SUPPORTED

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 qu’une adresse IPv4 a été spécifiée dans le membre Address de la structure MIB_IPNET_ROW2 vers laquelle pointe le paramètre Row , ou si aucune pile IPv6 ne se trouve sur l’ordinateur local et qu’une adresse IPv6 a été spécifiée dans le membre Address .

Autres

Utilisez la fonction FormatMessage pour obtenir la chaîne de message de l’erreur retournée.

Notes

Votre pilote doit initialiser les membres suivants de la structure MIB_IPNET_ROW2 vers laquelle pointe le paramètre Row .

  • Adresse
    Définissez sur une famille et une adresse IPv4 ou IPv6 valides en monodiffusion, anycast ou multidiffusion.

  • PhysicalAddress et PhysicalAddressLength
    Définissez sur une adresse physique valide.

  • InterfaceLuid ou InterfaceIndex
    Ces membres sont utilisés dans l’ordre indiqué précédemment. Par conséquent, si 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 (la valeur de ce membre a été définie sur zéro), le membre InterfaceIndex est ensuite utilisé pour déterminer l’interface.

La fonction SetIpNetEntry2 échoue si l’adresse IP passée dans le membre Address de la structure MIB_IPNET_ROW2 vers laquelle pointe le paramètre Row n’est pas une adresse IP voisine existante sur l’interface spécifiée.

Spécifications

Plateforme cible

Universal

Version

Disponible dans Windows Vista et versions ultérieures des systèmes d’exploitation Windows.

En-tête

Netioapi.h (inclure Netioapi.h)

Bibliothèque

Netio.lib

IRQL

< DISPATCH_LEVEL

Voir aussi

CreateIpNetEntry2

DeleteIpNetEntry2

FlushIpNetTable2

GetIpNetEntry2

GetIpNetTable2

MIB_IPNET_ROW2

MIB_IPNET_TABLE2

ResolveIpNetEntry2