|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
:sweat:标题说不清楚
先贴源码
这个是服务端的部分代码- private void Form1_Load(object sender, EventArgs e)
- {
- socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
- socket.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 6543));
- socket.Listen(10);
- thread = new Thread(() =>
- {
- while (true)
- {
- Socket s = socket.Accept(); /*主要是这句,如果这句放在循环里面的话[color=Red]每个客户端只能发送一次信息[/color] ,如果将这句放到循环上面的话,只有第一个客户端能连上并且可以发送多次 */
- byte[] buffer = new byte[1024];
- int n = s.Receive(buffer, buffer.Length, 0);
- string str = Encoding.Default.GetString(buffer).Trim('\0');
- Invoke(new MethodInvoker(() => {
- this.textBox1.AppendText(str);
- this.textBox1.AppendText("\r\n");
- }));
- byte[] tmp = Encoding.Default.GetBytes("服务端返回信息...");
- s.Send(tmp, tmp.Length, 0);
- }
- });
- thread.Start();
- this.Text = "服务器已开启";
- }
复制代码 |
|