Esempio n. 1
0
        private void SendFlieToCLients(ClientModel.ClientPacketRecievedArgs messageRecieved)
        {
            for (int Index = 0; Index < ClientList.Count; Index++)
            {
                try
                {
                    ClientList[Index].ClientSocket.Client.Send(Helper.ForePlay(messageRecieved.thePacket));
                }
                catch (Exception exx)
                {
                    Console.WriteLine(ClientList[Index].ClientIp + "Client Disconnected.");

                    RemoveClient(ClientList[Index]);
                    continue;
                }
            }
        }
Esempio n. 2
0
        private void Client_MessageRecieved(object Sendr, ClientModel.ClientPacketRecievedArgs MessageRecieved)
        {
            App.Current.Dispatcher.Invoke(() => {
                //        tbxConsole.Text += "接收到:" + MessageRecieved.thePacket.SenderName + "发送的" + MessageRecieved.thePacket.Message + "\r\n\r\n";
            });
            switch (MessageRecieved.thePacket._PacketType)
            {
            case PacketType.Chat:
                SendMessageToCLients(MessageRecieved.thePacket);

                break;

            case PacketType.File:
                SendFlieToCLients(MessageRecieved);

                break;

            case PacketType.CloseConnection:
                SendMessageToCLients(new Packet(PacketType.Chat, "", "Server", "下线了。"));

                RemoveClient(Sendr as ClientModel);
                break;
            }
        }