Как получить информацию о сетевом адаптере и расположении (HTML)

[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. При разработке приложений для Windows 10 см. раздел последняя документация]

В этом разделе показано, как получить объекты LanIdentifier, связанные с адаптерами в сети, и доступ к информации, которую можно использовать для определения их относительного размещения в инфраструктуре сети с помощью классов в пространстве имен Windows.Networking.Connectivity.

Объект LanIdentifier определяет методы, которые приложение использует для получения значений идентификаторов инфраструктуры/порта с целью определения размещения, а также значение идентификатора, связанное с сетевым адаптером. Этот идентификатор выражается в виде свойства ConnectionProfile, показывающего его связь с сетевым подключением.

Что необходимо знать

Технологии

Необходимые условия

В следующих примерах, основанных на примере network information, используется JavaScript. Общую справку по созданию приложения среды выполнения Windows на JavaScript см. в разделе Создание первого приложения среды выполнения Windows на JavaScript.

Получение всех объектов LanIdentifier

В нашем первом примере функция вызывает метод NetworkInformation.getLanIdentifiers, чтобы получить массив объектов 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");
     }
 }

Отображение свойств объекта LanIdentifier

Затем мы передаем объект LanIdentifier, возвращенный на предыдущем этапе, в следующий пример функции, чтобы отобразить отдельные значения идентификаторов инфраструктуры, порта и сетевого адаптера.

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

Связанные разделы

Прочие ссылки

Создание первого приложения среды выполнения Windows на JavaScript

Обработка исключений в сетевых приложениях

Как управлять ограничениями в сетях с лимитным тарифным планом

Как управлять событиями и изменениями доступности подключения

Как получить данные о сетевом подключении

Как получить данные об использовании сетевого подключения за определенный период

Ссылки

LanIdentifier

LanIdentifierData

NetworkAdapter

NetworkInformation

NetworkInformation.getLanIdentifiers

Примеры

Пример Network information

Пример Network status background