Como recuperar informações do adaptador de rede e da localidade (HTML)

[ Este artigo destina-se aos desenvolvedores do Windows 8.x e do Windows Phone 8.x que escrevem aplicativos do Windows Runtime. Se você estiver desenvolvendo para o Windows 10, consulte documentação mais recente]

Este tópico demonstra como recuperar os objetos de LanIdentifier associados a adaptadores em uma rede, e acessar informações que podem ser usadas para determinar o local relativo dentro da infraestrutura de rede usando classes no namespace Windows.Networking.Connectivity.

Um objeto LanIdentifier define os métodos que um aplicativo usa para recuperar valores de infraestrutura/ID de porta, determinando o local e o valor da ID associada a um adaptador de rede. Essa ID é expressa como uma propriedade ConnectionProfile para mostrar sua associação com a conexão de rede.

O que você precisa saber

Tecnologias

Pré-requisitos

Os exemplos a seguir usam JavaScript e se baseiam na Exemplos de informações de rede. Para obter instruções sobre a criação de um aplicativo do Tempo de Execução do Windows em JavaScript, veja Criar o primeiro aplicativo do Tempo de Execução do Windows em JavaScript.

Recuperar todos os objetos LanIdentifier

A função do nosso primeiro exemplo chama o método NetworkInformation.getLanIdentifiers para recuperar uma matriz de objetos LanIdentifier.

var networkInfo = Windows.Networking.Connectivity.NetworkInformation;

function DisplayLanIdentifiers() {
     var lanIdentifier = "";
     try {
         var lanIdentifiers = networkInfo.getLanIdentifiers();
         if (lanIdentifiers.length !== 0) {
             lanIdentifier += "Number of LAN Identifiers retrieved: " + lanIdentifiers.length + "\n\r";
             lanIdentifier += "=============================================\n\r";
             for (var i = 0; i < lanIdentifiers.length; i++) {
                 //Display Lan Identifier data for each identifier
                 lanIdentifier += getLanIdentifierData(lanIdentifiers[i]);
                 lanIdentifier += "----------------------------------------------------------------\n\r";
             }
             mySample.displayStatus(lanIdentifier);
         }
         else {
             mySample.displayStatus("No LAN identifier data found");
         }
     }

     catch (e) {
         mySample.displayError("Exception Caught: " + e + "\n\r");
     }
 }

Exibir as propriedades de um objeto LanIdentifier

Passamos então um objeto LanIdentifier devolvido na etapa anterior à função de exemplo a seguir para mostrar especificamente os valores específicos de ID de infraestrutura, ID de porta e ID de adaptador de rede.

var networkInfo = Windows.Networking.Connectivity.NetworkInformation;
  
function getLanIdentifierData(lanIdentifier) {
    var lanIdentifierData = "";
    var i = 0;
    try {
        if (lanIdentifier === null) {
            return "";
        }
        if (lanIdentifier.infrastructureId !== null) {
            lanIdentifierData += "Infrastructure Type: " + lanIdentifier.infrastructureId.type + "\n\r";
            lanIdentifierData += "Infrastructure Value: [";
            for (i = 0; i < lanIdentifier.infrastructureId.value.length; i++) {
                //Display the Infrastructure value array
                lanIdentifierData += lanIdentifier.infrastructureId.value[i].toString(16) + " ";
            }
            lanIdentifierData += "]\n\r";
        }
        if (lanIdentifier.portId !== null) {
            lanIdentifierData += "Port Type : " + lanIdentifier.portId.type + "\n\r";
            lanIdentifierData += "Port Value: [";
            for (i = 0; i < lanIdentifier.portId.value.length; i++) {
                //Display the PortId value array
                lanIdentifierData += lanIdentifier.portId.value[i].toString(16) + " ";
            }
            lanIdentifierData += "]\n\r";
        }
        if (lanIdentifier.networkAdapterId !== null) {
            lanIdentifierData += "Network Adapter Id : " + lanIdentifier.networkAdapterId + "\n\r";
        }
    }
    catch (e) {
        mySample.displayError("Exception Caught: " + e + "\n\r");
    }
    return lanIdentifierData;
}

Tópicos relacionados

Outro

Crie seu primeiro aplicativo do Tempo de Execução do Windows em JavaScript

Como resolver exceções em aplicativos de rede

Como gerenciar restrições de custo da rede limitada

Como gerenciar eventos de conexão de rede e mudanças na disponibilidade

Como recuperar informações de conexão de rede

Como recuperar dados de uso de conexão de rede

Referência

LanIdentifier

LanIdentifierData

NetworkAdapter

NetworkInformation

NetworkInformation.getLanIdentifiers

Exemplos

Exemplo de informações de rede

Exemplo de tela de fundo de status de rede