C# Network code


  private void ListenToClient1()
  {
    try
    {
      // Get IP address of server
      String hostname = Dns.GetHostName();
      IPAddress[] ipAddress = Dns.GetHostAddresses(hostname);
      tcpClient1Listener = new TcpListener(ipAddress[0], 33);


      // start tcpClient1Listener
      tcpClient1Listener.Start();


      // assign IP address to listener (tcpClient1Listener)
      client1Socket = tcpClient1Listener.AcceptSocket();


      // if new connection received, accept it
      if (client1Socket.Connected)
      {
        string data;


        addInfo("Client 1 connected.");


        while (true)
        {
          // create the Client1networkStream and 
          // Client1StreamReader and Client1StreamWriter
          client1NetworkStream = new NetworkStream(client1Socket);
          client1StreamReader  = new StreamReader(client1NetworkStream);
          client1StreamWriter  = new StreamWriter(client1NetworkStream);
          // listen to information recevied from port
          // assigned to client 1
          data = client1StreamReader.ReadLine();


          if (data != "")
              addInfo("Received info from client 1: " + data);


          if (data != "" && client2StreamWriter != null)
          {
            // pass information received from port for
            // client 1 to port for client 2 (using
            // Client2StreamWriter)
            client2StreamWriter.WriteLine(data);
            client2StreamWriter.Flush();
            addInfo("Client 1 received data - sending to Client 2.");
          }//end if.
        }//end while.
      }//end if.


      // close socketForClient
      client1Socket.Close();
      tcpClient1Listener.Stop();
    }
    catch (SocketException ex)
    {
      MessageBox.Show(ex.Message + " _ Thread 1");
    }
 }