Compartir a través de


Función CreateAnycastIpAddressEntry (netioapi.h)

La función CreateAnycastIpAddressEntry agrega una nueva entrada de dirección IP de difusión en el equipo local.

Sintaxis

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

Parámetros

[in] Row

Puntero a una entrada de estructura MIB_ANYCASTIPADDRESS_ROW para una entrada de dirección IP de difusión.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es NO_ERROR.

Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error.

Código devuelto Descripción
ERROR_ACCESS_DENIED
Acceso denegado. Este error se devuelve en varias condiciones que incluyen lo siguiente: el usuario carece de los privilegios administrativos necesarios en el equipo local o la aplicación no se ejecuta en un shell mejorado como administrador integrado (administrador de RunAs).
ERROR_INVALID_PARAMETER
Se pasó un parámetro no válido a la función. Este error se devuelve si se pasa un puntero NULL en el parámetro Row , el miembro Address del MIB_ANYCASTIPADDRESS_ROW señalado por el parámetro Row no se estableció en una dirección IPv4 o IPv6 de unidifusión válida, o los miembros InterfaceLuid o InterfaceIndex del MIB_ANYCASTIPADDRESS_ROW señalados por el parámetro Row no se especificaron.
ERROR_NOT_FOUND
No se encontró la interfaz especificada. Este error se devuelve si no se encontró la interfaz de red especificada por el miembro InterfaceLuid o InterfaceIndex del MIB_ANYCASTIPADDRESS_ROW al que apunta el parámetro Row .
ERROR_NOT_SUPPORTED
No se admite la solicitud. Este error se devuelve si no hay ninguna pila IPv4 en el equipo local y se especificó una dirección IPv4 en el miembro Address del MIB_ANYCASTIPADDRESS_ROW apuntado por el parámetro Row . Este error también se devuelve si no hay ninguna pila IPv6 en el equipo local y se especificó una dirección IPv6 en el miembro Address .
ERROR_OBJECT_ALREADY_EXISTS
El objeto ya existe. Este error se devuelve si el miembro Address del MIB_ANYCASTIPADDRESS_ROW señalado por el parámetro Row es un duplicado de una dirección IP de difusión existente en la interfaz especificada por el miembro InterfaceLuid o InterfaceIndex del MIB_ANYCASTIPADDRESS_ROW.
Otros
Use FormatMessage para obtener la cadena de mensaje del error devuelto.

Comentarios

La función CreateAnycastIpAddressEntry se define en Windows Vista y versiones posteriores.

La función CreateAnycastIpAddressEntry se usa para agregar una nueva entrada de dirección IP de anycast en un equipo local.

El miembro Address de la estructura MIB_ANYCASTIPADDRESS_ROW a la que apunta el parámetro Row debe inicializarse en una dirección y familia IPv4 de unidifusión válida o IPv6. Además, al menos uno de los siguientes miembros de la estructura MIB_ANYCASTIPADDRESS_ROW apunta al parámetro Row debe inicializarse en la interfaz: InterfaceLuid o InterfaceIndex.

Los campos se usan en el orden indicado anteriormente. Por lo tanto, si se especifica InterfaceLuid , este miembro se usa para determinar la interfaz en la que se va a agregar la dirección IP de unidifusión. Si no se estableció ningún valor para el miembro InterfaceLuid (los valores de este miembro se establecieron en cero), el miembro InterfaceIndex se usa a continuación para determinar la interfaz.

El miembro ScopeId de la estructura MIB_ANYCASTIPADDRESS_ROWa la que apunta row se omite cuando se llama a la función CreateAnycastIpAddressEntry . El miembro ScopeId viene determinado automáticamente por la interfaz en la que se agrega la dirección.

Se producirá un error en la función CreateAnycastIpAddressEntry si la dirección IP de anycast pasada en el miembro Address del MIB_ANYCASTIPADDRESS_ROW apuntado por el parámetro Row es un duplicado de una dirección IP de difusión de anycast existente en la interfaz.

Un usuario que inició sesión como miembro del grupo Administradores solo puede llamar a la función CreateAnycastIpAddressEntry . Si un usuario que no es miembro del grupo Administradores llama a CreateAnycastIpAddressEntry , se producirá un error en la llamada a la función y se devolverá ERROR_ACCESS_DENIED . Esta función también puede producir un error debido al control de cuentas de usuario (UAC) en Windows Vista y versiones posteriores. Si un usuario inicia sesión como miembro del grupo Administradores que no sea el administrador integrado, esta llamada producirá un error a menos que la aplicación se haya marcado en el archivo de manifiesto con un valor requestedExecutionLevel establecido en requireAdministrator. Si la aplicación carece de este archivo de manifiesto, un usuario que inició sesión como miembro del grupo Administradores que no sea el administrador integrado debe ejecutar la aplicación en un shell mejorado como administrador integrado (administrador de RunAs) para que esta función se realice correctamente.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado netioapi.h (incluya Iphlpapi.h)
Library Iphlpapi.lib
Archivo DLL Iphlpapi.dll

Consulte también

DeleteAnycastIpAddressEntry

GetAnycastIpAddressEntry

GetAnycastIpAddressTable

Referencia de la función auxiliar de IP

MIB_ANYCASTIPADDRESS_ROW

MIB_ANYCASTIPADDRESS_TABLE