Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private TcpListener tcpListener;
- private Thread listenThread;
- public static TcpClient client;
- public Form1()
- {
- InitializeComponent();
- this.tcpListener = new TcpListener(IPAddress.Any, 2020);
- this.listenThread = new Thread(new ThreadStart(ListenForClients));
- this.listenThread.Start();
- }
- private void ListenForClients()
- {
- this.tcpListener.Start();
- while (true)
- {
- //blocks until a client has connected to the server
- client = this.tcpListener.AcceptTcpClient();
- //create a thread to handle communication
- //with connected client
- Thread clientThread = new Thread(new ParameterizedThreadStart(HandleClientComm));
- clientThread.Start(client);
- }
- }
- private void HandleClientComm(object client)
- {
- TcpClient tcpClient = (TcpClient)client;
- NetworkStream clientStream = tcpClient.GetStream();
- //TcpClient client = new TcpClient(servername or ip , port);
- //IpEndPoint ipend = tcpClient.RemoteEndPoint;
- //Console.WriteLine(IPAddress.Parse(ipend.Address.ToString());
- //label3.Text = IPAddress.Parse(((IPEndPoint)tcpClient.Client.RemoteEndPoint).Address.ToString()).ToString();
- SetControlPropertyThreadSafe(label3, "Text", IPAddress.Parse(((IPEndPoint)tcpClient.Client.RemoteEndPoint).Address.ToString()).ToString());
- byte[] message = new byte[4096];
- int bytesRead;
- while (true)
- {
- bytesRead = 0;
- try
- {
- //blocks until a client sends a message
- bytesRead = clientStream.Read(message, 0, 4096);
- }
- catch
- {
- //a socket error has occured
- break;
- }
- if (bytesRead == 0)
- {
- //the client has disconnected from the server
- break;
- }
- //message has successfully been received
- ASCIIEncoding encoder = new ASCIIEncoding();
- //System.Diagnostics.Debug.WriteLine(encoder.GetString(message, 0, bytesRead));
- string received_text = encoder.GetString(message, 0, bytesRead).ToString();
- SetControlPropertyThreadSafe(label1, "Text", received_text);
- if (received_text == "cmdtim")
- {
- SendData(DateTime.Now.ToString());
- }
- }
- tcpClient.Close();
- }
- public static TcpClient client;
- client = this.tcpListener.AcceptTcpClient();
- TcpClient client = this.tcpListener.AcceptTcpClient();
Add Comment
Please, Sign In to add comment