110,534
社区成员
发帖
与我相关
我的任务
分享
//这是tcp连接
//连接tcp
//创建 1个客户端套接字 和1个负责监听服务端请求的线程
Socket socketClient = null;
Thread threadClient = null;
public void button1_tcpconnect_Click(object sender, EventArgs e)
{
for (int i = 0; i < 50; i++)
{
ClientForm clientform = new ClientForm();
//定义一个套字节监听 包含3个参数(IP4寻址协议,流式连接,TCP协议)
socketClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//需要获取文本框中的IP地址
IPAddress ipaddress = IPAddress.Parse(txtIP.Text.Trim());
//将获取的ip地址和端口号绑定到网络节点endpoint上
IPEndPoint endpoint = new IPEndPoint(ipaddress, int.Parse(txtPort.Text.Trim()));
try
{
//这里客户端套接字连接到网络节点(服务端)用的方法是Connect 而不是Bind
socketClient.Connect(endpoint);
}
catch (SocketException se)
{
MessageBox.Show("异常:" + se.Message);
}
}
//创建一个线程 用于监听服务端发来的消息
threadClient = new Thread(RecMsg);
//将窗体线程设置为与后台同步
threadClient.IsBackground = true;
//启动线程
threadClient.Start();
}
/// <summary>登录
/// 发送登录包
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button_login_Click(object sender, EventArgs e)
{
BuildPacketEveryState buildpacketeverystate = new BuildPacketEveryState();
buildpacketeverystate.chargepilecode = this.comboBox_selectsn.Text.ToString();
buildpacketeverystate.BuildPacket_Login();
//发包
socketClient.Send(buildpacketeverystate.loginData);
}