C#获取网络状态两种方式

第一种

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/// <summary>
/// 获取网络状态
/// </summary>
/// <param name="IP"></param>
/// <returns></returns>
public static bool CheckedIPSpeed(string IP)
{
    //远程服务器IP
    string ipStr = "www.google.com";
    //构造Ping实例
    Ping pingSender = new Ping();
    //Ping 选项设置
    PingOptions options = new PingOptions();
    options.DontFragment = true;
    //测试数据
    string data = "test data abcabc";
    byte[] buffer = Encoding.ASCII.GetBytes(data);
    //设置超时时间
    int timeout = 2 * 1000;
    //调用同步 send 方法发送数据,将返回结果保存至PingReply实例
    PingReply reply = pingSender.Send(ipStr, timeout, buffer, options);
    if (reply.Status == IPStatus.Success)
    {
        return true;
        //Console.WriteLine("答复的主机地址:" + reply.Address.ToString());
        //Console.WriteLine("往返时间:" + reply.RoundtripTime);
        //Console.WriteLine("生存时间(TTL):" + reply.Options.Ttl);
        //Console.WriteLine("是否控制数据包的分段:" + reply.Options.DontFragment);
        //Console.WriteLine("缓冲区大小:" + reply.Buffer.Length);
    }
    else
    {
        return false;
        //Console.WriteLine(reply.Status.ToString());
    }
 
}

  第二种

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public static bool  CheckedIPDetail(string IP)
    {
        Process p = new Process(); p.StartInfo.FileName = "cmd.exe";//设定程序名
        p.StartInfo.UseShellExecute = false; //关闭Shell的使用
        p.StartInfo.RedirectStandardInput = true;//重定向标准输入
        p.StartInfo.RedirectStandardOutput = true;//重定向标准输出
        p.StartInfo.RedirectStandardError = true;//重定向错误输出
        p.StartInfo.CreateNoWindow = true;//设置不显示窗口
        string pingrst; p.Start(); p.StandardInput.WriteLine("ping " + IP); //主机或ip地址
        p.StandardInput.WriteLine("exit");
        string strRst = p.StandardOutput.ReadToEnd();
        p.Close();
        return strRst.Contains("100% 丢失");
          
    }

  

posted @   #青鸟爱吃鱼  阅读(195)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示