コード例 #1
0
ファイル: TCPServerSide.cs プロジェクト: Mrowka1/SimpleTCP
        private void AcceptClients()
        {
            if (ServerListener.Pending())
            {
                TcpClient  client = ServerListener.AcceptTcpClient();
                ClientInst tmp    = new ClientInst
                {
                    Client       = client,
                    lastresponse = 0
                };

                clients.Add(tmp);



                //   SendMessage(client, "Odpowiedź od serwera!");

                Console.WriteLine("> " + "Connected " + client.Client.RemoteEndPoint.ToString());
                int count = 0;
                foreach (ClientInst element in clients)
                {
                    count++;
                    Console.Write("[" + count + "]" + element.Client.Client.RemoteEndPoint.ToString() + " ");
                }
                Console.WriteLine();
            }
            else
            {
                return;
            }
        }
コード例 #2
0
ファイル: TCPServerSide.cs プロジェクト: Mrowka1/SimpleTCP
 void ReceiveMessage(TcpClient client, string message)
 {
     E_OnReceivedTCPMessage(client, message);
     if (message.Equals("ECHO"))
     {
         for (int i = 0; i < clients.Count; i++)
         {
             if (client.Equals(clients[i].Client))
             {
                 ClientInst tmp = clients[i];
                 tmp.lastresponse = 0;
                 clients[i]       = tmp;
                 break;
             }
         }
     }
 }
コード例 #3
0
ファイル: TCPServerSide.cs プロジェクト: Mrowka1/Knb
 private void EchoClients(Object source, ElapsedEventArgs e)
 {
     if (clients.Count == 0)
     {
         return;
     }
     for (int i = 0; i < clients.Count; i++)
     {
         ClientInst tmp = clients[i];
         tmp.lastresponse += 2;
         clients[i]        = tmp;
         if (tmp.lastresponse > 10)
         {
             DisconnectClient(i);
             return;
         }
         SendMessage(tmp.Client, "ECHO");
     }
 }