Подтвердить что ты не робот

Выполнение "ping" внутри моего приложения С#

Мне нужно мое приложение для ping адреса, который я укажу позже, и просто просто скопируйте Average Ping Time в .Text метки.

Любая помощь?

EDIT:

Я нашел решение в случае, если кому-то интересно:

Ping pingClass = new Ping();        
PingReply pingReply = pingClass.Send("logon.chronic-domination.com");
label4.Text = (pingReply.RoundtripTime.ToString() + "ms");
4b9b3361

Ответ 1

Посмотрите NetworkInformation.Ping класс.

Пример:

Использование:

PingTimeAverage("stackoverflow.com", 4);

Реализация:

public static double PingTimeAverage(string host, int echoNum)
{
    long totalTime = 0;
    int timeout = 120;
    Ping pingSender = new Ping ();

    for (int i = 0; i < echoNum; i++)
    { 
        PingReply reply = pingSender.Send (host, timeout);
        if (reply.Status == IPStatus.Success)
        {
            totalTime += reply.RoundtripTime;
        }
    }
    return totalTime / echoNum;
}

Ответ 2

Так же, как и побочный эффект. Существует уже готовый проект по тому, как sourceforge делает то, что вы хотите. Это также включало реализацию ICMP (RFC 792)

Проект Sourceforge