skpsantosh2000 Ответов: 6

проверьте наличие или отсутствие подключения к интернету в c#


проверьте наличие или отсутствие подключения к интернету в коде c#

6 Ответов

Рейтинг:
2

Eddy Vluggen

Самым простым решением было бы позаимствовать эту функцию у VB.NET[^]. Вы можете использовать его после добавления ссылки на сборку "Microsoft.VisualBasic.dll".

Это только восстановит состояние сети, и интернет все еще может быть недоступен.

Это ограничивает возможности для



Наслаждаться :)


[no name]

5!

Рейтинг:
2

Kunal Chowdhury «IN»

Пропингуйте свой сервер или любой сайт (который всегда остается включенным) из вашего кода, и это решит вашу проблему.

Ааа.... У меня есть код для этого. Хотя это и в Silverlight, но вы можете получить немного помощи от него. Проверьте реализацию вызова службы WCF, чтобы получить представление о ней.

Вот ссылка: Как пинговать сетевой IP или имя хоста в приложении Silverlight?[^]


[no name]

5!

Рейтинг:
2

Kunal Chowdhury «IN»

Вот реализация метода:

public bool PingNetwork(string hostNameOrAddress)
    {
        bool pingStatus = false;

        using (Ping p = new Ping())
        {
            string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
            byte[] buffer = Encoding.ASCII.GetBytes(data);
            int timeout = 120;

            try
            {
                PingReply reply = p.Send(hostNameOrAddress, timeout, buffer);
                pingStatus = (reply.Status == IPStatus.Success);
            }
            catch (Exception)
            {
                pingStatus = false;
            }
        }

        return pingStatus;
    }


Пожалуйста, проголосуйте & "отметьте как ответ", если это вам поможет. Дайте мне знать, если у вас возникнут какие-либо проблемы.


jainendra.soft

Пометить Как Ответ

Рейтинг:
1

zandi_ahmad

Вы можете проверить наличие сетевого подключения в .NET 2.0 с помощью

System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()


и для уведомление об использовании класса
System.Net.NetworkInformation.NetworkChange.NetworkAvailabilityChanged
System.Net.NetworkInformation.NetworkChange.NetworkAddressChanged


NetworkAvailable


fjdiewornncalwe

Этому вопросу уже почти 2 года. Пожалуйста, не добавляйте ответы на старые вопросы, как это.

Рейтинг:
1

sandeepreddyk

public static bool chk_con()
{
    try
    {
        using (var client = new WebClient())
        using (var stream = client.OpenRead("http://www.google.com"))
        {
            return true;
        }
    }
    catch
    {
        return false;
    }
}


CHill60

Этому вопросу уже 3 года, и он уже имеет высоко оцененные решения. Ответы на старые вопросы обычно привлекают только даунвотинг

Рейтинг:
1

Eranga Supun Gamagedara

используя системы.Нет.Сведений о сети;


private void timer1_Tick(object sender, EventArgs e)
       {
           bool connection = NetworkInterface.GetIsNetworkAvailable();
           if (connection == true)
           {
               MessageBox.Show("available");

           }
           else
           {
           MessageBox.Show("not available");
           }
       }


fjdiewornncalwe

Этому вопросу уже почти 2 года. Пожалуйста, не добавляйте ответы на старые вопросы, как это.

Member 10813199

Старый или новый, он все еще применяется, и это решило мою проблему сегодня в 2014 году. Спасибо за ответ Эранга Супун Гамагедара. Если бы вы не ответили, когда вы это сделали, это не появилось бы в результатах поиска google, и я все еще искал бы ответ на свой вопрос