从今天起,亦是美网络将不定期给大家分享C#编程学习案例,想学习C#编程的同学可以经常关注本网站,或者订阅网站邮件,订阅后网站每次更新都会以邮件的形式发送到你邮箱里,订阅方式请查看网站主页右边栏,其实在之前笔者也有发布C#案例的文章,不过发布的较少,需要记录的才发布出来,以后尽量做到定期发布,比如每天一例,让大家通过一个个例子来逐步学习C#编程开发。
今天给大家带来的例子:通过C#编程判断网络是否畅通,下面先附上代码:
//构造Ping实例
Ping ping=new Ping();
//Ping选项设置,用于控制如何传输数据包
PingOptions poptions = new PingOptions();
poptions.DontFragment = true;
//测试数据
string data = "panpan is a SB";
Byte[] buffer = Encoding.ASCII.GetBytes(data);
//设置超时时间
int timeout = 1000;
//调用同步send方法发送数据,将返回结果保存至PingReply实例
//此处如果直接ping IP的话,先引用命名空间using System.Net;
//然后代码改为:PingReply pingreply = ping.Send(IPadress.Parse("192.168.1.1"),timeout,buffer,poptions);
PingReply pingreply = ping.Send("www.baidu.com",timeout,buffer,poptions);
if (pingreply.Status == IPStatus.Success)
{
MessageBox.Show("网络通畅", "提示");
}
else
{
MessageBox.Show("网络不通", "提示");
}
该例子是通过ping操作来实现的,首先我们需要引入空间名 using System.Net.NetworkInformation;因为代码中用到的子类都在这个命名空间下。如果直接ping的是IP的话,需要用到IPadress.Parse()这个方法,而IPadress类在using System.Net;命名空间下,所以我们要先引用using System.Net;命名空间。
至于代码里的其他解释,都已经在注释里标明了,大家可自行理解,如果有不懂的或者需要交流的,请在文章底部留言。