c#下实现ping操作代码
发布时间:2020-12-15 17:53:45 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 c#下实现ping操作代码 这里我写的是一个窗体程序。首先添加textbox,listbox,button控件,其中textbox录入域名或IP,listbox显示结果. private void bu
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考
c#下实现ping操作代码
这里我写的是一个窗体程序。首先添加textbox,listbox,button控件,其中textbox录入域名或IP,listbox显示结果. 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()); } }[nextpage] 也可以做异步的处理,修改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.Buffer.Length)); listBox1.Items.Add(sbuilder.ToString()); } } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |