Ping的用法和练习

Windows的命令行里,ping的用法如下图:

 C#中,Ping的写法也日趋简单。(教材上的Ping内容需要设置太多内容,本专业不需要掌握)

大致步骤如下:

  1. 创建用于发出ping命令的对象:
    Ping ping = new Ping();
  2. 创建用于接收对端主机反馈的对象;
    PingReply pr;
  3. 获取对端主机的ip地址(有问题需要报错);
    ip1 = (Dns.GetHostAddresses(args[0]))[0].ToString();

    args[0]表示用控制台执行程序的时候,后面跟的第一个参数。

  4. 理解反馈中各个部分的含义;
    1. pr.Address表示响应的主机
    2. pr.Buffer表示响应的字节,pr.Buffer.Length也就是字节长度
    3. pr.RoundtripTime表示ping包来回所用的时间(ms)
    4. pr.Options.Ttl表示返回报文的TTL值
    5. pr.Status表示ping命令执行的结果,在失败的时候可以用pr.Status.ToString()查看失败原因。
  5. 根据反馈内容给出不同的输出
    if (pr.Status == IPStatus.Success)
                    {
                        Console.WriteLine($"成功的提示");
                    }
                    else
                    {
                        Console.WriteLine($"失败的提示");
                    }

可以用Thread.Sleep(1000)每隔一秒发送一个ping包。

大家试着用控制台完成以下效果的程序:

 可以试试按照windows下标准ping那样,在命令结束后添加统计信息。

这个功能在winform下又该如何完成呢?

注意:

1、文本框中用“ ” 来换行;

2、可以用textBox2.Refresh()在每一次ping完强制刷新结果文本框。

原文地址:https://www.cnblogs.com/wanjinliu/p/12608483.html