Partilhar via


Função SetIpNetEntry2

A função SetIpNetEntry2 define o endereço físico de uma entrada de endereço IP vizinha existente em um computador local.

Sintaxe

NETIOAPI_API SetIpNetEntry2(
  _In_ PMIB_IPNET_ROW2 Row
);

Parâmetros

  • Linha [in]
    Um ponteiro para uma entrada de estrutura MIB_IPNET_ROW2 para uma entrada de endereço IP vizinha.

Valor de retorno

SetIpNetEntry2 retornar STATUS_SUCCESS se a função for bem-sucedida.

Se a função falhar, SetIpNetEntry2 retornará um dos seguintes códigos de erro:

Código de retorno Descrição
STATUS_INVALID_PARAMETER

Um parâmetro inválido foi passado para a função. Este erro é retornado nas seguintes situações.

  • Um ponteiro de NULL foi passado no parâmetro Row.

  • O endereço membro da estrutura de MIB_IPNET_ROW2 para a qual o parâmetro de linha aponta não foi definido como um endereço IPv4 ou IPv6 unicast, anycast ou multicast válido.

  • O PhysicalAddress e PhysicalAddressLength membros da estrutura MIB_IPNET_ROW2 não foram definidos como um endereço físico válido.

  • Tanto InterfaceLuid quanto InterfaceIndex membros da estrutura MIB_IPNET_ROW2 não foram especificados.

  • Um endereço de loopback foi passado no Address membro.

STATUS_NOT_FOUND

A interface especificada não pôde ser encontrada. Este erro é retornado se a função não conseguir encontrar a interface de rede especificada pelo InterfaceLuid ou InterfaceIndex membro da estrutura de MIB_IPNET_ROW2 para a qual o parâmetro Row aponta.

STATUS_NOT_SUPPORTED

A solicitação não é suportada. Este erro será retornado se nenhuma pilha IPv4 estiver localizada no computador local e um endereço IPv4 tiver sido especificado no Address membro da estrutura MIB_IPNET_ROW2 para a qual o parâmetro Row aponta ou se nenhuma pilha IPv6 estiver localizada no computador local e um endereço IPv6 tiver sido especificado no membro Address.

Outros

Use a função FormatMessage para obter a cadeia de caracteres de mensagem para o erro retornado.

Comentários

O driver deve inicializar os seguintes membros da estrutura de MIB_IPNET_ROW2 para a qual o parâmetro Row aponta.

  • Endereço
    Defina como um endereço e família IPv4 ou IPv6 unicast, anycast ou multicast válidos.

  • PhysicalAddress e PhysicalAddressLength
    Defina como um endereço físico válido.

  • InterfaceLuid ou InterfaceIndex
    Esses membros são usados na ordem listada anteriormente. Portanto, se InterfaceLuid for especificado, esse membro será usado para determinar a interface. Se nenhum valor foi definido para o membro InterfaceLuid (o valor desse membro foi definido como zero), o membro InterfaceIndex será usado em seguida para determinar a interface.

A função de SetIpNetEntry2 falhará se o endereço IP passado no endereço membro da estrutura de MIB_IPNET_ROW2 para a qual o parâmetro de linha aponta não for um endereço IP vizinho existente na interface especificada.

Requerimentos

Plataforma de destino

Universal

Versão

Disponível no Windows Vista e versões posteriores dos sistemas operacionais Windows.

Cabeçalho

Netioapi.h (inclui Netioapi.h)

Biblioteca

Netio.lib

IRQL

< DISPATCH_LEVEL

Ver também

CreateIpNetEntry2

DeleteIpNetEntry2

FlushIpNetTable2

GetIpNetEntry2

GetIpNetTable2

MIB_IPNET_ROW2

MIB_IPNET_TABLE2

ResolveIpNetEntry2