c#如何用socket去ping通一个已知IP地址的设备呢?比如该设备IP为192.168.42.150,电脑的IP为192.168.42.1

有没有代码呢?或者有没有懂的可以单独交流啊!!... 有没有代码呢?或者有没有懂的可以单独交流啊!! 展开
 我来答
哲事姓无
推荐于2016-01-28 · TA获得超过1176个赞
知道小有建树答主
回答量:903
采纳率:100%
帮助的人:446万
展开全部

.net 中已经自带了ping 类,如无必要否则直接使用即可

 //using System.Net.NetworkInformation;
        using (var ping = new Ping())
        {
            var pingReply = ping.Send("192.168.1.1");

            if (pingReply.Status == IPStatus.Success)
            {
                Console.WriteLine("Address: {0}", pingReply.Address.ToString());
                Console.WriteLine("RoundTrip time: {0}", pingReply.RoundtripTime);
                Console.WriteLine("Time to live: {0}", pingReply.Options.Ttl);
                Console.WriteLine("Don't fragment: {0}", pingReply.Options.DontFragment);
                Console.WriteLine("Buffer size: {0}", pingReply.Buffer.Length);
            }
            else
            {
                Console.WriteLine(pingReply.Status);
            }


            // .net 2 下的ping 有bug,需要转为IDisposable进行释放 
            ((IDisposable) ping).Dispose();
        }

如果想用socket 实现, 可以搜索 c# icmp

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式