public void Listen() { UpdateConversationDelegate updateConversationDelegate; updateConversationDelegate = new UpdateConversationDelegate(UpdateConversation); IPEndPoint serverEndpoint = new IPEndPoint(IPAddress.Any, this.myPort); this.listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); listener.Bind(serverEndpoint); listener.Listen(300); while (true) { Socket client = listener.Accept(); Stream netStream = new NetworkStream(client); StreamReader reader = new StreamReader(netStream); string result = reader.ReadToEnd(); Invoke(updateConversationDelegate, result); reader.Close(); netStream.Close(); client.Close(); } }
}//send button public void Listen() { UpdateConversationDelegate updateConversationDelegate; updateConversationDelegate = new UpdateConversationDelegate(UpdateConversation); //no matter IP adress, it will process it IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Any, this.myPort); //tcp ~ phone line this.listener = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); listener.Bind(serverEndPoint); listener.Listen(300); //cont. listen for connections while (true) { Socket client = listener.Accept(); Stream netStream = new NetworkStream(client); StreamReader reader = new StreamReader(netStream); //reads to full content and returns as string string result = reader.ReadToEnd(); //put msg into textbox [does not have direct access to parent method] //can use invoke of delegate method Invoke(updateConversationDelegate, result); reader.Close(); netStream.Close(); client.Close(); } }//end listen