/// <summary> /// 监听客户端发来的请求 /// </summary> private void WatchConnecting() { while (true) { socConnection = socketWatch.Accept(); Textshow.AppendText("客户端连接成功" + "\r\n"); //创建一个通信线程 ParameterizedThreadStart pts = new ParameterizedThreadStart(ServerRecMsg); Thread thr = new Thread(pts); thr.IsBackground = true; //启动线程 thr.Start(socConnection); Thread thr2 = new Thread(mousemove); //启动线程 thr2.Start(); } }
private void buttonLink_Click(object sender, EventArgs e) { socketWatch = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPAddress ipaddress = IPAddress.Parse(textIP.Text.Trim()); IPEndPoint endpoint = new IPEndPoint(ipaddress, int.Parse(textPORT.Text.Trim())); socketWatch.Bind(endpoint); socketWatch.Listen(20); threadWatch = new Thread(WatchConnecting); threadWatch.IsBackground = true; threadWatch.Start(); Textshow.AppendText("开始监听客户端传来的信息!" + "\r\n"); }
Socket socketWatch = null; //负责监听客户端的套接字 private void buttonLink_Click(object sender, EventArgs e) { //定义一个套接字用于监听客户端发来的信息 包含3个参数(IP4寻址协议,流式连接,TCP协议) socketWatch = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); //服务端发送信息 需要1个IP地址和端口号 IPAddress ipaddress = IPAddress.Parse(textIP.Text.Trim()); //获取文本框输入的IP地址 //将IP地址和端口号绑定到网络节点endpoint上 IPEndPoint endpoint = new IPEndPoint(ipaddress, int.Parse(textPORT.Text.Trim())); //获取文本框上输入的端口号 //监听绑定的网络节点 socketWatch.Bind(endpoint); //将套接字的监听队列长度限制为20 socketWatch.Listen(20); //创建一个监听线程 threadWatch = new Thread(WatchConnecting); //将窗体线程设置为与后台同步 threadWatch.IsBackground = true; //启动线程 threadWatch.Start(); //启动线程后 txtMsg文本框显示相应提示 Textshow.AppendText("开始监听客户端传来的信息!" + "\r\n"); }