Cómo recuperar información de localidad y adaptador de red (HTML)

[ Este artículo está destinado a desarrolladores de Windows 8.x y Windows Phone 8.x que escriben aplicaciones de Windows en tiempo de ejecución. Si estás desarrollando para Windows 10, consulta la documentación más reciente

En este tema se indica cómo recuperar objetos LanIdentifier asociados con adaptadores en una red y acceder a información que puede servir para conocer su ubicación relativa dentro de la infraestructura de red, usando para ello las clases del espacio de nombres Windows.Networking.Connectivity.

Un objeto LanIdentifier define los métodos que una aplicación usa para recuperar valores de identificador de puerto e infraestructura para determinar la ubicación y el valor de identificador asociado con un adaptador de red. Este identificador se expresa como una propiedad ConnectionProfile para mostrar su asociación con la conexión de red.

Lo que debes saber

Tecnologías

Requisitos previos

Los siguientes ejemplos usan JavaScript y se basan en la muestra de información de red. Si necesitas ayuda para crear una aplicación de Windows en tiempo de ejecución con JavaScript, consulta Crear la primera aplicación de Windows en tiempo de ejecución con JavaScript.

Recuperar todos los objetos LanIdentifier

Nuestra primera función de ejemplo llama al método NetworkInformation.getLanIdentifiers para recuperar una 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");
     }
 }

Mostrar las propiedades de un objeto LanIdentifier

Después pasamos un objeto LanIdentifier, devuelto en el paso anterior, a la función de ejemplo siguiente para que se muestren los valores específicos de identificador de infraestructura, identificador de puerto e identificador de adaptador de red.

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;
}

Temas relacionados

Otros

Crear la primera aplicación de Windows en tiempo de ejecución con JavaScript

Cómo controlar excepciones en aplicaciones de red

Cómo administrar límites de costos de red de uso medido

Cómo administrar eventos de conexión de red y cambios de disponibilidad

Cómo recuperar información de conexión de red

Cómo recuperar datos de uso de conexión de red

Referencia

LanIdentifier

LanIdentifierData

NetworkAdapter

NetworkInformation

NetworkInformation.getLanIdentifiers

Muestras

Muestra de información de red

Muestra del estado de red en segundo plano