Compartir a través de


Función SetIpStatisticsEx (iphlpapi.h)

La función SetIpStatisticsEx activa o desactiva el reenvío IP y establece el valor predeterminado de período de vida (TTL) para el equipo local.

Sintaxis

IPHLPAPI_DLL_LINKAGE ULONG SetIpStatisticsEx(
  [in] PMIB_IPSTATS Statistics,
       ULONG        Family
);

Parámetros

[in] Statistics

Puntero a una estructura de MIB_IPSTATS . El llamador debe establecer los miembros dwForwarding y dwDefaultTTL de esta estructura en los nuevos valores. Para mantener uno de los miembros en su valor actual, use MIB_USE_CURRENT_TTL o MIB_USE_CURRENT_FORWARDING.

Family

Familia de direcciones para la que se va a establecer el reenvío y el TTL.

Los valores posibles para la familia de direcciones se enumeran en el archivo de encabezado Winsock2.h . Tenga en cuenta que los valores de la familia de direcciones AF_ y las constantes de familia de protocolos PF_ son idénticos (por ejemplo, AF_INET y PF_INET), por lo que se puede usar cualquier constante.

En Windows SDK publicado para Windows Vista y versiones posteriores, la organización de los archivos de encabezado ha cambiado y los valores posibles para este miembro se definen en el archivo de encabezado Ws2def.h . Tenga en cuenta que el archivo de encabezado Ws2def.h se incluye automáticamente en Winsock2.h y nunca se debe usar directamente.

Los valores admitidos actualmente son AF_INET y AF_INET6.

Valor Significado
AF_INET
2
Familia de direcciones del Protocolo de Internet versión 4 (IPv4). Cuando se especifica este parámetro, esta función establece las opciones de reenvío y TTL para las entradas IPv4.
AF_INET6
23
Familia de direcciones del Protocolo de Internet versión 6 (IPv6). Cuando se especifica este parámetro, esta función establece las opciones de reenvío y TTL para las entradas IPv6.

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
Se denegó el acceso. 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 pIpStats o el parámetro Family no se estableció en AF_INET y AF_INET6. Este error también se devuelve si el miembro dwForwarding de la estructura MIB_IPSTATS a la que apunta el parámetro pIpStats contiene un valor distinto de MIB_IP_NOT_FORWARDING, MIB_IP_FORWARDING o MIB_USE_CURRENT_FORWARDING.
ERROR_NOT_SUPPORTED
No se admite la solicitud. Este error se devuelve si no hay ninguna pila IPv4 en el equipo local y AF_INET se especificó en el parámetro Family o no hay ninguna pila IPv6 en el equipo local y AF_INET6 se especificó en el miembro family .
Otros
Use FormatMessage para obtener la cadena de mensaje del error devuelto.

Comentarios

Para establecer solo el TTL predeterminado, el autor de la llamada también puede usar la función SetIpTTL .

Un usuario que inició sesión como miembro del grupo Administradores solo puede llamar a la función SetIpStatisticsEx . Si un usuario llama a SetIpStatisticsEx que no es miembro del grupo Administradores, se producirá un error en la llamada a la función y se devolverá ERROR_ACCESS_DENIED .

La función SetIpStatisticsEx 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 que carece de este archivo de manifiesto, un usuario que ha iniciado sesión como miembro del grupo Administradores distinto del 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

   
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado iphlpapi.h
Library Iphlpapi.lib
Archivo DLL Iphlpapi.dll

Consulte también

Referencia de la función auxiliar de IP

Página de inicio del asistente de IP

MIB_IPSTATS

SetIpStatistics

SetIpTTL