c# 判断一个ip通不通 能不能ping通
1个回答
展开全部
方法一: 已经证实能用的.using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net; using System.Net.NetworkInformation; namespace PingIpAddress { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private Ping pingSender = new Ping(); private string strIP = ""; private void button1_Click(object sender, EventArgs e) { strIP = txtIP.Text; //要ping的IP地址 第一种方法本人亲自试验过。可以使用 PingOptions pingOption = new PingOptions(); pingOption.DontFragment = true; string data = "sendData:goodgoodgoodgoodgoodgood"; byte[] buffer = Encoding.ASCII.GetBytes(data); int timeout = 120; PingReply reply = pingSender.Send(strIP, timeout, buffer); if (reply.Status == IPStatus.Success) { MessageBox.Show("能ping通 "); } else { MessageBox.Show("ping不通"); } } } } 第二种方法: 没试过 C#判断网络状态代码 /// <summary> /// 是否能 Ping 通指定的主机 /// </summary> /// <param name="ip">ip 地址或主机名或域名</param> /// <returns>true 通,false 不通</returns> public bool Ping(string ip) { int timeout = 1000; string data = "Test Data!"; System.Net.NetworkInformation.Ping p = new System.Net.NetworkInformation.Ping(); System.Net.NetworkInformation.PingOptions options = new System.Net.NetworkInformation.PingOptions(); options.DontFragment = true; byte[] buffer = Encoding.ASCII.GetBytes(data); System.Net.NetworkInformation.PingReply reply = p.Send(ip, timeout, buffer, options); if (reply.Status == System.Net.NetworkInformation.IPStatus.Success) return true; else return false; }
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询