Esempio n. 1
0
 public static void clientDCed(ClientHandler c)
 {
     clients.Remove(c);
     //  form.label2.Text = "Connected:" + clients.Count;
     form.Invoke(new changeText(form.changeLabel), "Connected:" + clients.Count);
     stopRoutine();
 }
Esempio n. 2
0
        public void start(object port)
        {
            listener = new TcpListener((int)port);
            listener.Start();
            try
            {
                while (true)
                {

                    if (Form1.stop)
                    {
                        Console.WriteLine("broke");
                        listener.Stop();
                        break;
                    }
                    TcpClient client = listener.AcceptTcpClient();
                    ClientHandler ch = new ClientHandler(client);
                    Form1.clients.Add(ch);
                    Form1.form.Invoke(new Form1.changeText(Form1.form.changeLabel), "Connected:" + Form1.clients.Count);
                    ch.clientDC += Form1.clientDCed;
                    Thread t = new Thread(new ThreadStart(ch.start));
                    t.Start();

                }
            }
            catch (ThreadAbortException t)
            {
                //this shit isn't called because of the block of accepting tcp
                Console.WriteLine("got the abort");
                listener.Stop();
            }
        }