Função CreateAnycastIpAddressEntry (netioapi.h)
A função CreateAnycastIpAddressEntry adiciona uma nova entrada de endereço IP anycast no computador local.
Sintaxe
IPHLPAPI_DLL_LINKAGE _NETIOAPI_SUCCESS_ NETIOAPI_API CreateAnycastIpAddressEntry(
[in] const MIB_ANYCASTIPADDRESS_ROW *Row
);
Parâmetros
[in] Row
Um ponteiro para uma entrada de estrutura MIB_ANYCASTIPADDRESS_ROW para uma entrada de endereço IP anycast.
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 códigos de erro a seguir.
Código de retorno | Descrição |
---|---|
|
Acesso negado. Esse erro é retornado sob 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). |
|
Um parâmetro inválido foi passado para a função. Esse erro será retornado se um ponteiro NULL for passado no parâmetro Row , o membro Address do MIB_ANYCASTIPADDRESS_ROW apontado pelo parâmetro Row não tiver sido definido como um endereço IPv4 ou IPv6 unicast válido ou os membros InterfaceLuid ou InterfaceIndex do MIB_ANYCASTIPADDRESS_ROW apontados pelo parâmetro Row não foram especificados. |
|
Não foi possível encontrar a interface especificada. Esse erro será retornado se o adaptador de rede especificado pelo membro InterfaceLuid ou InterfaceIndex do MIB_ANYCASTIPADDRESS_ROW apontado pelo parâmetro Row não puder ser encontrado. |
|
A solicitação não terá suporte. Esse erro será retornado se nenhuma pilha IPv4 estiver no computador local e um endereço IPv4 tiver sido especificado no membro Address do MIB_ANYCASTIPADDRESS_ROW apontado pelo parâmetro Row . Esse erro também será retornado se nenhuma pilha IPv6 estiver no computador local e um endereço IPv6 tiver sido especificado no membro Address . |
|
O objeto já existe. Esse erro será retornado se o membro Address do MIB_ANYCASTIPADDRESS_ROW apontado pelo parâmetro Row for uma duplicata de um endereço IP anycast existente na interface especificada pelo membro InterfaceLuid ou InterfaceIndex do MIB_ANYCASTIPADDRESS_ROW. |
|
Use FormatMessage para obter a cadeia de caracteres de mensagem para o erro retornado. |
Comentários
A função CreateAnycastIpAddressEntry é definida no Windows Vista e posterior.
A função CreateAnycastIpAddressEntry é usada para adicionar uma nova entrada de endereço IP anycast em um computador local.
O membro Address na estrutura MIB_ANYCASTIPADDRESS_ROW apontada pelo parâmetro Row deve ser inicializado para um endereço IPv4 ou IPv6 válido e uma família. Além disso, pelo menos um dos seguintes membros na estrutura MIB_ANYCASTIPADDRESS_ROW apontado para o parâmetro Row deve ser inicializado para a interface: InterfaceLuid ou InterfaceIndex.
Os campos são usados na ordem listada acima. Portanto, se InterfaceLuid for especificado, esse membro será usado para determinar a interface na qual adicionar o endereço IP unicast. Se nenhum valor tiver sido definido para o membro InterfaceLuid (os valores desse membro foram definidos como zero), o membro InterfaceIndex será usado em seguida para determinar a interface.
O membro ScopeId da estrutura MIB_ANYCASTIPADDRESS_ROW apontada pela Linha é ignorado quando a função CreateAnycastIpAddressEntry é chamada. O membro ScopeId é determinado automaticamente pela interface na qual o endereço é adicionado.
A função CreateAnycastIpAddressEntry falhará se o endereço IP anycast passado no membro Address do MIB_ANYCASTIPADDRESS_ROW apontado pelo parâmetro Row for uma duplicata de um endereço IP anycast existente na interface.
A função CreateAnycastIpAddressEntry só pode ser chamada por um usuário conectado como membro do grupo Administradores. Se CreateAnycastIpAddressEntry for chamado por um usuário que não seja membro do grupo Administradores, a chamada de função falhará e ERROR_ACCESS_DENIED será retornado. Essa função 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 um 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 como requireAdministrator. 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.
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 |