Вызов функции C # при подключении к Wi-Fi или локальной сети - PullRequest
0 голосов
/ 20 июля 2010

Я уже знаю, как проверить, есть ли подключение к Интернету. Но я хочу, чтобы эта (функция) вызывалась, когда пользователь подключается к локальной сети или подключается к сети Wi-Fi. В основном я создаю авто-логин для моего университета.

Ответы [ 4 ]

3 голосов
/ 07 марта 2013
NetworkInterface[] nics=NetworkInterface.GetAllNetworkInterfaces();

foreach (NetworkInterface adapter in nics)
{
    if (adapter.OperationalStatus == OperationalStatus.Up)
    {
        if (adapter.NetworkInterfaceType == NetworkInterfaceType.Wireless80211)
        {
            Console.WriteLine("Wifi");
        }
    }
}

NetworkInterfaceType.Lan работает для локальной сети

2 голосов
/ 20 июля 2010

Безусловно, самый простой способ - это просто попытаться периодически запускать стандартную процедуру автоматического входа в систему, если она работает, все в порядке, и пользователь вошел в систему, если это не так, то соединение отсутствует. Нет смысла пытаться определить, ПОЧЕМУ соединение отсутствует, если вы не пишете какое-то приложение для диагностики сетевых подключений.

1 голос
/ 17 февраля 2011

Чтобы ответить на ваш точный вопрос, см. Дублирующий вопрос на Мне нужно событие, чтобы обнаружить подключение / отключение Интернета

Но вы выбрали самый простой и sanest вариант; просто пытайтесь войти в систему каждые 3 секунды или около того, пока не получите ответ от сервера (это может быть «Неверное имя пользователя / пароль» ...)

1 голос
/ 20 июля 2010

Полагаю, у вас может быть поток слушателя, который будет просто проверять состояние интернет-соединения и вызывать событие, если соединение было установлено или потеряно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...