예제 #1
0
        public void SendToServer(string text)
        {
            MensagemModel message = new MensagemModel(AcaoMensagemEnum.EnviarTexto, text);

            byte[] buffer = message.ToByteArray();
            clientSocket.BeginSend(buffer, 0, buffer.Length, SocketFlags.None, SendCallback, null);
        }
예제 #2
0
        public void SendDesconectRequest()
        {
            MensagemModel message = new MensagemModel(AcaoMensagemEnum.Desconectar, string.Empty);

            byte[] buffer = message.ToByteArray();
            clientSocket.BeginSend(buffer, 0, buffer.Length, SocketFlags.None, SendCallback, null);
        }
예제 #3
0
        public void DesconectAllClients()
        {
            MensagemModel message = new MensagemModel(AcaoMensagemEnum.TerminarTransmissao, string.Empty);

            byte[] buffer = message.ToByteArray();
            _sendForAll(buffer);
        }
예제 #4
0
        public void SendToClients(string text)
        {
            MensagemModel message = new MensagemModel(AcaoMensagemEnum.EnviarTexto, text);

            byte[] buffer = message.ToByteArray();
            _sendForAll(buffer);
        }
예제 #5
0
        private void AcceptCallback(IAsyncResult AR)
        {
            try
            {
                Socket current = _serverSocket.EndAccept(AR);

                _lstSocket.Add(current);

                buffer = new byte[current.ReceiveBufferSize];

                MensagemModel message  = new MensagemModel(AcaoMensagemEnum.EnviarTexto, "Servidor Conectado");
                var           sendData = message.ToByteArray();

                current.BeginSend(sendData, 0, sendData.Length, SocketFlags.None, SendCallback, current);

                current.BeginReceive(buffer, 0, buffer.Length, SocketFlags.None, ReceiveCallback, current);

                _serverSocket.BeginAccept(AcceptCallback, null);
            }
            catch (SocketException ex)
            {
                _mensagemServidor.ShowErrorDialog(ex.Message);
            }
        }