Função SetIpStatistics (iphlpapi.h)

A função SetIpStatistics ativa ou desativa o encaminhamento de IP e define o valor de TTL (vida útil padrão) para o computador local.

Sintaxe

IPHLPAPI_DLL_LINKAGE DWORD SetIpStatistics(
  [in] PMIB_IPSTATS pIpStats
);

Parâmetros

[in] pIpStats

Um ponteiro para uma estrutura MIB_IPSTATS . O chamador deve definir os membros dwForwarding e dwDefaultTTL dessa estrutura como os novos valores. Para manter um dos membros no valor atual, use MIB_USE_CURRENT_TTL ou MIB_USE_CURRENT_FORWARDING.

Valor retornado

Se a função for bem-sucedida, o valor retornado será NO_ERROR.

Se a função falhar, o valor retornado será um dos seguintes códigos de erro.

Código de retorno Descrição
ERROR_ACCESS_DENIED
O acesso foi negado. Esse erro é retornado no Windows Vista e no Windows Server 2008 em várias condições que incluem o seguinte: o usuário não tem os privilégios administrativos necessários no computador local ou o aplicativo não está em execução em um shell aprimorado como administrador interno (administrador RunAs).
ERROR_INVALID_PARAMETER
Um parâmetro inválido foi passado para a função. Esse erro será retornado se um ponteiro NULL for passado no parâmetro pIpStats . Esse erro também será retornado se o membro dwForwarding na estrutura MIB_IPSTATS apontada pelo parâmetro pIpStats contiver um valor diferente de MIB_IP_NOT_FORWARDING, MIB_IP_FORWARDING ou MIB_USE_CURRENT_FORWARDING.
Outros
Use FormatMessage para obter a cadeia de caracteres de mensagem para o erro retornado.

Comentários

Para definir apenas o TTL padrão, o chamador também pode usar a função SetIpTTL .

No Windows Vista e posteriores, a função SetIpStatistics só pode ser chamada por um usuário conectado como membro do grupo Administradores. Se SetIpStatistics for chamado por um usuário que não é membro do grupo Administradores, a chamada de função falhará e ERROR_ACCESS_DENIED será retornado.

A função SetIpStatistics também pode falhar devido ao UAC (controle de conta de usuário) no Windows Vista e posterior. Se um aplicativo que contém essa função for executado por um usuário conectado como membro do grupo Administradores diferente do Administrador interno, essa chamada falhará, a menos que o aplicativo tenha sido marcado no arquivo de manifesto com um requestedExecutionLevel definido para exigirAdministrator. Se o aplicativo não tiver esse arquivo de manifesto, um usuário conectado como membro do grupo Administradores diferente do Administrador interno deverá executar o aplicativo em um shell aprimorado como administrador interno (administrador RunAs) para que essa função tenha êxito.

Nota No Windows NT 4.0 e Windows 2000 e posteriores, essa função executa uma operação privilegiada. Para que essa função seja executada com êxito, o chamador deve estar conectado como membro do grupo Administradores ou do grupo NetworkConfigurationOperators.
 

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho iphlpapi.h
Biblioteca Iphlpapi.lib
DLL Iphlpapi.dll

Confira também

Referência de função auxiliar de IP

Página Inicial do Auxiliar de IP

MIB_IPSTATS

SetIpStatisticsEx

SetIpTTL