estrutura MIB_IF_ROW2 (netioapi.h)
A estrutura MIB_IF_ROW2 armazena informações sobre uma interface específica.
Sintaxe
typedef struct _MIB_IF_ROW2 {
NET_LUID InterfaceLuid;
NET_IFINDEX InterfaceIndex;
GUID InterfaceGuid;
WCHAR Alias[IF_MAX_STRING_SIZE + 1];
WCHAR Description[IF_MAX_STRING_SIZE + 1];
ULONG PhysicalAddressLength;
UCHAR PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
UCHAR PermanentPhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH];
ULONG Mtu;
IFTYPE Type;
TUNNEL_TYPE TunnelType;
NDIS_MEDIUM MediaType;
NDIS_PHYSICAL_MEDIUM PhysicalMediumType;
NET_IF_ACCESS_TYPE AccessType;
NET_IF_DIRECTION_TYPE DirectionType;
struct {
BOOLEAN HardwareInterface : 1;
BOOLEAN FilterInterface : 1;
BOOLEAN ConnectorPresent : 1;
BOOLEAN NotAuthenticated : 1;
BOOLEAN NotMediaConnected : 1;
BOOLEAN Paused : 1;
BOOLEAN LowPower : 1;
BOOLEAN EndPointInterface : 1;
} InterfaceAndOperStatusFlags;
IF_OPER_STATUS OperStatus;
NET_IF_ADMIN_STATUS AdminStatus;
NET_IF_MEDIA_CONNECT_STATE MediaConnectState;
NET_IF_NETWORK_GUID NetworkGuid;
NET_IF_CONNECTION_TYPE ConnectionType;
ULONG64 TransmitLinkSpeed;
ULONG64 ReceiveLinkSpeed;
ULONG64 InOctets;
ULONG64 InUcastPkts;
ULONG64 InNUcastPkts;
ULONG64 InDiscards;
ULONG64 InErrors;
ULONG64 InUnknownProtos;
ULONG64 InUcastOctets;
ULONG64 InMulticastOctets;
ULONG64 InBroadcastOctets;
ULONG64 OutOctets;
ULONG64 OutUcastPkts;
ULONG64 OutNUcastPkts;
ULONG64 OutDiscards;
ULONG64 OutErrors;
ULONG64 OutUcastOctets;
ULONG64 OutMulticastOctets;
ULONG64 OutBroadcastOctets;
ULONG64 OutQLen;
} MIB_IF_ROW2, *PMIB_IF_ROW2;
Membros
InterfaceLuid
Tipo: NET_LUID
O LUID (identificador exclusivo local) para o adaptador de rede.
InterfaceIndex
Tipo: NET_IFINDEX
O índice que identifica o adaptador de rede. Esse valor de índice pode ser alterado quando um adaptador de rede é desabilitado e habilitado e não deve ser considerado persistente.
InterfaceGuid
Tipo: GUID
O GUID para o adaptador de rede.
Alias[IF_MAX_STRING_SIZE + 1]
Tipo: WCHAR[IF_MAX_STRING_SIZE + 1]
Uma cadeia de caracteres Unicode terminada em NULL que contém o nome do alias do adaptador de rede.
Description[IF_MAX_STRING_SIZE + 1]
Tipo: WCHAR[IF_MAX_STRING_SIZE + 1]
Uma cadeia de caracteres Unicode terminada em NULL que contém uma descrição do adaptador de rede.
PhysicalAddressLength
Tipo: ULONG
O comprimento, em bytes, do endereço de hardware físico especificado pelo membro PhysicalAddress .
PhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH]
Tipo: UCHAR[IF_MAX_PHYS_ADDRESS_LENGTH]
O endereço de hardware físico do adaptador para esse adaptador de rede.
PermanentPhysicalAddress[IF_MAX_PHYS_ADDRESS_LENGTH]
Tipo: UCHAR[IF_MAX_PHYS_ADDRESS_LENGTH]
O endereço de hardware físico permanente do adaptador para esse adaptador de rede.
Mtu
Tipo: ULONG
O tamanho máximo da MTU (unidade de transmissão), em bytes, para esse adaptador de rede.
Type
Tipo: IFTYPE
O tipo de interface conforme definido pela IANA (Autoridade de Nomes Atribuídos à Internet). Para obter mais informações, consulte http://www.iana.org/assignments/ianaiftype-mib. Os valores possíveis para o tipo de interface são listados no arquivo de cabeçalho Ipifcons.h .
A tabela a seguir lista valores comuns para o tipo de interface, embora muitos outros valores sejam possíveis.
TunnelType
Tipo: TUNNEL_TYPE
O método de encapsulamento usado por um túnel se o membro Type for IF_TYPE_TUNNEL. O tipo de túnel é definido pela IANA (Internet Assigned Names Authority). Para obter mais informações, consulte http://www.iana.org/assignments/ianaiftype-mib. Esse membro pode ser um dos valores do tipo de enumeração TUNNEL_TYPE definido no arquivo de cabeçalho Ifdef.h .
MediaType
Tipo: NDIS_MEDIUM
O tipo de mídia NDIS para a interface. Esse membro pode ser um dos valores do tipo de enumeração NDIS_MEDIUM definido no arquivo de cabeçalho Ntddndis.h .
PhysicalMediumType
Tipo: NDIS_PHYSICAL_MEDIUM
O tipo médio físico do NDIS. Esse membro pode ser um dos valores do tipo de enumeração NDIS_PHYSICAL_MEDIUM definido no arquivo de cabeçalho Ntddndis.h .
AccessType
Tipo: NET_IF_ACCESS_TYPE
O tipo de acesso da interface. Esse membro pode ser um dos valores do tipo de enumeração NET_IF_ACCESS_TYPE definido no arquivo de cabeçalho Ifdef.h .
DirectionType
Tipo: NET_IF_DIRECTION_TYPE
O tipo de direção da interface. Esse membro pode ser um dos valores do tipo de enumeração NET_IF_DIRECTION_TYPE definido no arquivo de cabeçalho Ifdef.h .
InterfaceAndOperStatusFlags
Um conjunto de sinalizadores que fornecem informações sobre a interface. Esses sinalizadores são combinados com uma operação OR bit a bit. Se nenhum dos sinalizadores se aplicar, esse membro será definido como zero.
InterfaceAndOperStatusFlags.HardwareInterface
Tipo: BOOLEAN Defina se o adaptador de rede for para hardware.
InterfaceAndOperStatusFlags.FilterInterface
Tipo: BOOLEAN Defina se o adaptador de rede for para um módulo de filtro.
InterfaceAndOperStatusFlags.ConnectorPresent
Tipo: BOOLEAN Defina se um conector estiver presente no adaptador de rede. Esse valor será definido se houver um adaptador de rede físico.
InterfaceAndOperStatusFlags.NotAuthenticated
Tipo: BOOLEAN Defina se a porta padrão para o adaptador de rede não for autenticada. Se um adaptador de rede não for autenticado pelo destino, o adaptador de rede não estará em um modo operacional. Embora isso se aplique a conexões de rede com fio e sem fio, a autenticação é mais comum para conexões de rede sem fio.
InterfaceAndOperStatusFlags.NotMediaConnected
Tipo: BOOLEAN Defina se o adaptador de rede não estiver em um estado conectado à mídia. Se um cabo de rede estiver desconectado para uma rede com fio, isso será definido. Para uma rede sem fio, isso é definido para o adaptador de rede que não está conectado a uma rede.
InterfaceAndOperStatusFlags.Paused
Tipo: BOOLEAN Defina se a pilha de rede do adaptador de rede estiver em pausa ou em pausa. Isso não significa que o computador esteja em um estado hibernado.
InterfaceAndOperStatusFlags.LowPower
Tipo: BOOLEAN Defina se o adaptador de rede estiver em um estado de baixa potência.
InterfaceAndOperStatusFlags.EndPointInterface
Tipo: BOOLEAN Defina se o adaptador de rede é um dispositivo de ponto de extremidade e não um adaptador de rede verdadeiro que se conecta a uma rede. Isso pode ser definido por dispositivos como telefones inteligentes que usam a infraestrutura de rede para se comunicar com o computador, mas não fornecem conectividade a uma rede externa. É obrigatório que esses tipos de dispositivos definam esse sinalizador.
OperStatus
Tipo: IF_OPER_STATUS
O status operacional para a interface, conforme definido no RFC 2863 como IfOperStatus. Para obter mais informações, consulte http://www.ietf.org/rfc/rfc2863.txt. Esse membro pode ser um dos valores do tipo de enumeração IF_OPER_STATUS definido no arquivo de cabeçalho Ifdef.h .
AdminStatus
Tipo: NET_IF_ADMIN_STATUS
O status administrativo para a interface, conforme definido no RFC 2863. Para obter mais informações, consulte http://www.ietf.org/rfc/rfc2863.txt. Esse membro pode ser um dos valores do tipo de enumeração NET_IF_ADMIN_STATUS definido no arquivo de cabeçalho Ifdef.h .
MediaConnectState
Tipo: NET_IF_MEDIA_CONNECT_STATE
O estado de conexão da interface. Esse membro pode ser um dos valores do tipo de enumeração NET_IF_MEDIA_CONNECT_STATE definido no arquivo de cabeçalho Ifdef.h .
NetworkGuid
Tipo: NET_IF_NETWORK_GUID
O GUID associado à rede à qual a interface pertence.
ConnectionType
Tipo: NET_IF_CONNECTION_TYPE
O tipo de conexão do adaptador de rede NDIS. Esse membro pode ser um dos valores do tipo de enumeração NET_IF_CONNECTION_TYPE definido no arquivo de cabeçalho Ifdef.h .
TransmitLinkSpeed
Tipo: ULONG64
A velocidade em bits por segundo do link de transmissão.
ReceiveLinkSpeed
Tipo: ULONG64
A velocidade em bits por segundo do link de recebimento.
InOctets
Tipo: ULONG64
O número de octetos de dados recebidos sem erros por meio dessa interface. Esse valor inclui octetos em pacotes unicast, difusão e multicast.
InUcastPkts
Tipo: ULONG64
O número de pacotes unicast recebidos sem erros por meio dessa interface.
InNUcastPkts
Tipo: ULONG64
O número de pacotes não unicast recebidos sem erros por meio dessa interface. Esse valor inclui pacotes de difusão e multicast.
InDiscards
Tipo: ULONG64
O número de pacotes de entrada que foram escolhidos para serem descartados, embora nenhum erro tenha sido detectado para impedir que os pacotes sejam entregues a um protocolo de camada superior.
InErrors
Tipo: ULONG64
O número de pacotes de entrada que foram descartados devido a erros.
InUnknownProtos
Tipo: ULONG64
O número de pacotes de entrada que foram descartados porque o protocolo era desconhecido.
InUcastOctets
Tipo: ULONG64
O número de octetos de dados recebidos sem erros em pacotes unicast por meio dessa interface.
InMulticastOctets
Tipo: ULONG64
O número de octetos de dados recebidos sem erros em pacotes multicast por meio dessa interface.
InBroadcastOctets
Tipo: ULONG64
O número de octetos de dados recebidos sem erros em pacotes de difusão por meio dessa interface.
OutOctets
Tipo: ULONG64
O número de octetos de dados transmitidos sem erros por meio dessa interface. Esse valor inclui octetos em pacotes unicast, difusão e multicast.
OutUcastPkts
Tipo: ULONG64
O número de pacotes unicast transmitidos sem erros por meio dessa interface.
OutNUcastPkts
Tipo: ULONG64
O número de pacotes não unicast transmitidos sem erros por meio dessa interface. Esse valor inclui pacotes de difusão e multicast.
OutDiscards
Tipo: ULONG64
O número de pacotes de saída que foram descartados mesmo que não tenham erros.
OutErrors
Tipo: ULONG64
O número de pacotes de saída que foram descartados devido a erros.
OutUcastOctets
Tipo: ULONG64
O número de octetos de dados transmitidos sem erros em pacotes unicast por meio dessa interface.
OutMulticastOctets
Tipo: ULONG64
O número de octetos de dados transmitidos sem erros em pacotes multicast por meio dessa interface.
OutBroadcastOctets
Tipo: ULONG64
O número de octetos de dados transmitidos sem erros em pacotes de difusão por meio dessa interface.
OutQLen
Tipo: ULONG64
O comprimento da fila de transmissão. Este campo não é usado no momento.
Comentários
A estrutura MIB_IF_ROW2 é definida no Windows Vista e posterior.
Os valores do campo Tipo são definidos no arquivo de cabeçalho Ipifcons.h . Atualmente, há suporte apenas para os valores possíveis listados na descrição do membro Type .
Observe que o arquivo de cabeçalho Netioapi.h é incluído automaticamente no arquivo de cabeçalho Iphlpapi.h . O arquivo de cabeçalho Netioapi.h nunca deve ser usado diretamente.
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] |
Cabeçalho | netioapi.h (inclua Iphlpapi.h) |