Função GetIpForwardTable2 (netioapi.h)
A função GetIpForwardTable2 recupera as entradas de rota IP no computador local.
Sintaxe
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API GetIpForwardTable2(
[in] ADDRESS_FAMILY Family,
[out] PMIB_IPFORWARD_TABLE2 *Table
);
Parâmetros
[in] Family
A família de endereços a ser recuperada.
Os valores possíveis para a família de endereços são listados no arquivo de cabeçalho Winsock2.h . Observe que os valores para a família de endereços AF_ e as constantes da família de protocolos PF_ são idênticos (por exemplo, AF_INET e PF_INET), para que qualquer constante possa ser usada.
Na SDK do Windows lançada para o Windows Vista e posteriores, a organização dos arquivos de cabeçalho foi alterada e os valores possíveis para esse membro são definidos no arquivo de cabeçalho Ws2def.h. Observe que o arquivo de cabeçalho Ws2def.h é incluído automaticamente em Winsock2.h e nunca deve ser usado diretamente.
Atualmente, os valores com suporte são AF_INET, AF_INET6 e AF_UNSPEC.
[out] Table
Um ponteiro para uma estrutura MIB_IPFORWARD_TABLE2 que contém uma tabela de entradas de rota IP no computador local.
Retornar valor
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 |
---|---|
|
Um parâmetro inválido foi passado para a função. Esse erro será retornado se um ponteiro NULL for passado no parâmetro Table ou o parâmetro Family não tiver sido especificado como AF_INET, AF_INET6 ou AF_UNSPEC. |
|
Recursos de memória insuficientes estão disponíveis para concluir a operação. |
|
Nenhuma entrada de rota IP, conforme especificado no parâmetro Family , foi encontrada. |
|
A solicitação não terá suporte. Esse erro será retornado se nenhuma pilha IPv4 estiver no computador local e AF_INET tiver sido especificado no parâmetro Family . Esse erro também será retornado se nenhuma pilha IPv6 estiver no computador local e AF_INET6 tiver sido especificado no parâmetro Family . Esse erro também é retornado em versões do Windows em que essa função não tem suporte. |
|
Use FormatMessage para obter a cadeia de caracteres de mensagem para o erro retornado. |
Comentários
A função GetIpForwardTable2 é definida no Windows Vista e posterior.
O
A função GetIpForwardTable2 enumera as entradas de rota IP em um sistema local e retorna essas informações em uma estrutura de MIB_IPFORWARD_TABLE2.
As entradas de rota IP são retornadas em uma estrutura MIB_IPFORWARD_TABLE2 no buffer apontado pelo parâmetro Table . A estrutura MIB_IPFORWARD_TABLE2 contém uma contagem de entradas de rota IP e uma matriz de estruturas de MIB_IPFORWARD_ROW2 para cada entrada de rota IP. Quando essas estruturas retornadas não forem mais necessárias, libere a memória chamando FreeMibTable.
O parâmetro Family deve ser inicializado para AF_INET, AF_INET6 ou AF_UNSPEC.
Observe que a estrutura de MIB_IPFORWARD_TABLE2 retornada apontada pelo parâmetro Table pode conter preenchimento para alinhamento entre o membro NumEntries e a primeira entrada de matriz MIB_IPFORWARD_ROW2 no membro Table da estrutura MIB_IPFORWARD_TABLE2 . O preenchimento para alinhamento também pode estar presente entre as entradas da matriz MIB_IPFORWARD_ROW2 . Qualquer acesso a uma entrada de matriz MIB_IPFORWARD_ROW2 deve pressupor que o preenchimento possa existir.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | netioapi.h (inclua Iphlpapi.h) |
Biblioteca | Iphlpapi.lib |
DLL | Iphlpapi.dll |