Partager via


CreateAnycastIpAddressEntry, fonction (netioapi.h)

La fonction CreateAnycastIpAddressEntry ajoute une nouvelle entrée d’adresse IP anycast sur l’ordinateur local.

Syntaxe

IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API CreateAnycastIpAddressEntry(
  [in] const MIB_ANYCASTIPADDRESS_ROW *Row
);

Paramètres

[in] Row

Pointeur vers une entrée de structure MIB_ANYCASTIPADDRESS_ROW pour une entrée d’adresse IP anycast.

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_ACCESS_DENIED
L’accès est refusé. Cette erreur est retournée dans plusieurs conditions, notamment : l’utilisateur n’a pas les privilèges d’administration requis sur l’ordinateur local ou l’application ne s’exécute pas dans un interpréteur de commandes amélioré en tant qu’administrateur intégré (administrateur RunAs).
ERROR_INVALID_PARAMETER
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 Address du MIB_ANYCASTIPADDRESS_ROW pointé par le paramètre Row n’a pas été défini sur une adresse IPv4 ou IPv6 de monodiffusion valide, ou si les deux membres InterfaceLuid ou InterfaceIndex du MIB_ANYCASTIPADDRESS_ROW pointés par le paramètre Row n’étaient pas spécifiés.
ERROR_NOT_FOUND
L’interface spécifiée est introuvable. Cette erreur est retournée si l’interface réseau spécifiée par le membre InterfaceLuid ou InterfaceIndex du MIB_ANYCASTIPADDRESS_ROW pointé par le paramètre Row est introuvable.
ERROR_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 du MIB_ANYCASTIPADDRESS_ROW pointé vers le paramètre Row . Cette erreur est également retournée 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 .
ERROR_OBJECT_ALREADY_EXISTS
L'objet existe déjà. Cette erreur est retournée si le membre Address du MIB_ANYCASTIPADDRESS_ROW pointé par le paramètre Row est un doublon d’une adresse IP anycast existante sur l’interface spécifiée par le membre InterfaceLuid ou InterfaceIndex du MIB_ANYCASTIPADDRESS_ROW.
Autres
Utilisez FormatMessage pour obtenir la chaîne de message pour l’erreur retournée.

Remarques

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

La fonction CreateAnycastIpAddressEntry est utilisée pour ajouter une nouvelle entrée d’adresse IP anycast sur un ordinateur local.

Le membre Address dans la structure MIB_ANYCASTIPADDRESS_ROW pointée vers le paramètre Row doit être initialisé vers une adresse et une famille IPv4 ou IPv6 valides. En outre, au moins l’un des membres suivants de la structure MIB_ANYCASTIPADDRESS_ROW pointait vers le paramètre Row doit être initialisé sur l’interface : InterfaceLuid ou InterfaceIndex.

Les champs sont utilisés dans l’ordre indiqué ci-dessus. Par conséquent, si l’interfaceLuid est spécifiée, ce membre est utilisé pour déterminer l’interface sur laquelle ajouter l’adresse IP unicast. 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.

Le membre ScopeId de la structure MIB_ANYCASTIPADDRESS_ROW pointée vers la ligne est ignoré lorsque la fonction CreateAnycastIpAddressEntry est appelée. Le membre ScopeId est automatiquement déterminé par l’interface à laquelle l’adresse est ajoutée.

La fonction CreateAnycastIpAddressEntry échoue si l’adresse IP anycast passée dans le membre Address du MIB_ANYCASTIPADDRESS_ROW pointé par le paramètre Row est un doublon d’une adresse IP anycast existante sur l’interface.

La fonction CreateAnycastIpAddressEntry ne peut être appelée que par un utilisateur connecté en tant que membre du groupe Administrateurs. Si CreateAnycastIpAddressEntry est appelé par un utilisateur qui n’est pas membre du groupe Administrateurs, l’appel de fonction échoue et ERROR_ACCESS_DENIED est retourné. Cette fonction peut également échouer en raison du contrôle de compte d’utilisateur (UAC) sur Windows Vista et versions ultérieures. Si une application qui contient cette fonction est exécutée par un utilisateur connecté en tant que membre du groupe Administrateurs autre que l’administrateur intégré, cet appel échoue, sauf si l’application a été marquée dans le fichier manifeste avec un paramètre requestedExecutionLevel défini sur requireAdministrator. Si l’application ne dispose pas de ce fichier manifeste, un utilisateur connecté en tant que membre du groupe Administrateurs autre que l’administrateur intégré doit alors exécuter l’application dans un interpréteur de commandes amélioré en tant qu’administrateur intégré (administrateur d’exécution) pour que cette fonction réussisse.

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

DeleteAnycastIpAddressEntry

GetAnycastIpAddressEntry

GetAnycastIpAddressTable

Informations de référence sur la fonction d’assistance IP

MIB_ANYCASTIPADDRESS_ROW

MIB_ANYCASTIPADDRESS_TABLE