展会信息港展会大全

c#下实现ping操作 录入域名或IP 显示结果
来源:互联网   发布日期:2016-01-26 10:29:37   浏览:2552次  

导读:首先添加textbox,listbox,button控件,其中textbox录入域名或IP,listbox显示结果 在button1_click事件键入 private void button1_Click(object sender, EventArgs e) { Ping p1 = new Pi ...

首先添加textbox,listbox,button控件,其中textbox录入域名或IP,listbox显示结果.

在button1_click事件键入

private void button1_Click(object sender, EventArgs e)

{

Ping p1 = new Ping(); //只是演示,没有做错误处理

PingReply reply = p1.Send(this.textBox1.Text);//阻塞方式 displayReply(reply); //显示结果 } private void displayReply(PingReply reply) //显示结果

{

StringBuilder sbuilder ;

if (reply.Status == IPStatus.Success)

{

sbuilder = new StringBuilder();

sbuilder.Append(string.Format("Address: {0} ", reply.Address.ToString ()));

sbuilder.Append(string.Format("RoundTrip time: {0} ", reply.RoundtripTime));

sbuilder.Append(string.Format("Time to live: {0} ", reply.Options.Ttl));

sbuilder.Append(string.Format("Don't fragment: {0} ", reply.Options.DontFragment));

sbuilder.Append(string.Format("Buffer size: {0} ", reply.Buffer.Length));

listBox1.Items.Add(sbuilder.ToString());

}

}

也可以做异步的处理,修改button1_click,并添加PingCompletedCallBack方法

private void button1_Click(object sender, EventArgs e)

{

Ping p1 = new Ping();

p1.PingCompleted += new PingCompletedEventHandler(this.PingCompletedCallBack);//设置PingCompleted事件处理程序

p1.SendAsync(this.textBox1.Text, null);

}

private void PingCompletedCallBack(object sender, PingCompletedEventArgs e)

{

if (e.Cancelled)

{

listBox1.Items.Add("Ping Canncel");

return;

}

if (e.Error != null)

{

listBox1.Items.Add(e.Error.Message);

return;

}

StringBuilder sbuilder;

PingReply reply = e.Reply;

if (reply.Status == IPStatus.Success)

{

sbuilder = new StringBuilder();

sbuilder.Append(string.Format("Address: {0} ", reply.Address.ToString()));

sbuilder.Append(string.Format("RoundTrip time: {0} ", reply.RoundtripTime));

sbuilder.Append(string.Format("Time to live: {0} ", reply.Options.Ttl));

sbuilder.Append(string.Format("Don't fragment: {0} ", reply.Options.DontFragment));

sbuilder.Append(string.Format("Buffer size: {0} ", reply.Buffer.Length));

listBox1.Items.Add(sbuilder.ToString());

}

}

赞助本站

人工智能实验室

相关热词: ping c

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港