public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private IPEndPoint EPServer = null;
//连接
private Ping pingSender = new Ping();
public int ServerConnected(string ip)
{
try
{
PingOptions pingOption = new PingOptions();
pingOption.DontFragment = true;
EPServer = new IPEndPoint(IPAddress.Parse(ip), 1433);
string data = "sendData";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout=1000;
PingReply reply = pingSender.Send(EPServer.Address, timeout, buffer);
if (reply.Status == IPStatus.Success)
{
if (Convert.ToInt32(reply.RoundtripTime.ToString()) <= 80)
{
// MessageBox.Show("网速很好");
}
else if (Convert.ToInt32(reply.RoundtripTime.ToString()) <= 200 || Convert.ToInt32(reply.RoundtripTime.ToString()) > 80)
{
// MessageBox.Show("网速一般");
}
else if (Convert.ToInt32(reply.RoundtripTime.ToString()) <= 600 || Convert.ToInt32(reply.RoundtripTime.ToString()) > 200)
{
//MessageBox.Show("网速比较差");
}
else if (Convert.ToInt32(reply.RoundtripTime.ToString()) > 600)
{
//MessageBox.Show("网速很差,建议选择另外服务器!");
//
}
MessageBox.Show("网速很好");
return Convert.ToInt32(reply.RoundtripTime.ToString());
}
else
{
//MessageBox.Show("网速不通,请重新选择服务器!");
return timeout;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message + " " + ex.StackTrace);
return 1000;
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
//测试按钮
private void test_Click(object sender, EventArgs e)
{
string fu1 = "58.20.36.207";
string fu2 = "222.240.200.59";
string fu3 = "122.240.9.108";
MessageBox.Show(this.ServerConnected(fu1).ToString());
MessageBox.Show(this.ServerConnected(fu2).ToString());
MessageBox.Show(this.ServerConnected(fu3).ToString());
if (this.ServerConnected(fu1) > this.ServerConnected(fu2))
{
if (this.ServerConnected(fu2) > this.ServerConnected(fu3))
{
this.ServerConnected(fu3);
}
else
{
if (this.ServerConnected(fu1) < this.ServerConnected(fu3))
{
this.ServerConnected(fu1);
}
else
{
this.ServerConnected(fu2);
}
}
}
//if (fu1.Checked == true)
//{
// this.getIp("58.20.36.207");
//}
//if (fu2.Checked == true)
//{
// this.getIp("222.240.200.59");
//}
//if (fu3.Checked == true)
//{
// this.getIp("");
//}
}
//public void getIp(string ip)
//{
// try
// {
// EPServer = new IPEndPoint(IPAddress.Parse(ip), 1433);
// }
// catch (Exception ex)
// {
// MessageBox.Show(ex.Message + " " + ex.StackTrace);
// }
// ServerConnected();
//}
}