void AcceptInfo(Object obj) { Socket socket = obj as Socket; //byte[] data = new byte[1024]; dsetText d1 = new dsetText(setText); while (true) { try { Socket client = socket.Accept(); IPEndPoint clientip = (IPEndPoint)client.RemoteEndPoint; string msg = "Connect With client : " + clientip.Address + " Port" + clientip.Port + "\r\n"; if (ExecuteList.InvokeRequired) { ExecuteList.Invoke(d1, msg); } else { ExecuteList.Items.Add(msg); } /* string welcome = "welcome here!"; * data = Encoding.ASCII.GetBytes(welcome); * client.Send(data, data.Length, SocketFlags.None); * * data = new byte[1024]; * recv = client.Receive(data); * RecievedList.Items.Add(Encoding.ASCII.GetString(data, 0, recv)); * if (recv == 0) break; * client.Send(data, recv, SocketFlags.None); */ if (client != null) { Thread RecieveMsgThread = new Thread(new ParameterizedThreadStart(recieveMessage)); RecieveMsgThread.IsBackground = true; RecieveMsgThread.Start(client); } } catch (Exception ex) { if (ExecuteList.InvokeRequired) { ExecuteList.Invoke(d1, ex.Message); } else { ExecuteList.Items.Add(ex.Message); } Thread.CurrentThread.Abort(); break; } } }
void recieveMessage(object obj) { Socket client = obj as Socket; if (client != null) { dsetText d1 = new dsetText(setText); while (client != null) { try { byte[] data = new byte[1024 * 1024]; int recv; recv = client.Receive(data); string revstring = Encoding.ASCII.GetString(data, 0, recv); this.Invoke(d1, revstring); string sendString = "hello " + ((IPEndPoint)client.RemoteEndPoint).Address.ToString() + ",I get Message " + revstring; data = Encoding.UTF8.GetBytes(sendString); recv = data.Length; client.Send(data, recv, SocketFlags.None); } catch (Exception ex) { if (ExecuteList.InvokeRequired) { ExecuteList.Invoke(d1, ex.Message); } else { ExecuteList.Items.Add(ex.Message); } Thread.CurrentThread.Abort(); } } } }
private Menu ExecuteThirdChoice(string key) { ExecuteList.Add(new KeyValuePair <int, string>(3, key)); return(SubMenu); }