Buscar este blog

lunes, 4 de julio de 2011

Comunicacion servidor -cliente

Este programa permite conectar 2 computadoras por medio del TCP u IP


//Para recibir los mensajes enviados de los clientes.
private void button2_Click(object sender, EventArgs e)
        {
            //Leer los mensajes que nos llegan
            try
            {
                data = ReceiveData(client); 
            
                string message = Encoding.ASCII.GetString(data); //si recibimos un
                //mensaje entonces lo decoficamos a un string
                if (message == "exit") //si recibimos exit nos salimos..
                {
                 
                    label1.Text = "Desconecto desde" + newclient.Address + "en el puerto" + newclient.Port;
                    //cerramos el socket del cliente
                    client.Shutdown(SocketShutdown.Both);
                    client.Close();
                }
                richTextBox1.Text = message;                    
            }
            catch (SocketException)
            {
                label1.Text = "No se encontro conexion con el cliente" + newclient.Address;
                return;
            
            }
            //Ceramos el socket con el que escuchamos
            // newsock.Shutdown(SocketShutdown.Both);




private void cambiarFuenteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if ((fontDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK))
            {
                richTextBox1.Font = fontDialog1.Font;
            }
        }
        private void colorDeTextoToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ColorDialog ColorD = new ColorDialog();
            //Obtiene o establece la posibilidad de utilizar colores personalizados.
            ColorD.AllowFullOpen = false;
            //Indica que aparecerá el cuadro de ayuda en el cuadro de diálogo
            ColorD.ShowHelp = true;
            //Obtiene o establece el color utilizado por el usuario.
            ColorD.Color = richTextBox1.ForeColor;
            //Si se eligió un color y se presionó OK
            if ((ColorD.ShowDialog() == System.Windows.Forms.DialogResult.OK))
            {
                //asignamos el color
                richTextBox1.ForeColor = ColorD.Color;
            }
        }



//Para el envio de los datos al servidor.
private void button2_Click(object sender, EventArgs e)
        {
            string message = richTextBox1.Text; // richTextBox1.Text  ; //Leemos el input que queremos enviar
            try
            {//Enviamos el mensaje.
                sent = SendData(server, Encoding.ASCII.GetBytes(message));
            }
            catch (SocketException)
            {//Si hay excepcion nos salimos pq no hay conexion
                label1.Text = "No se ha encontrado conexion con el servidor" + ipep.Address;
                return;
            }//Si se ejeucta el comando exit nos salimos
            if (message == "exit")
            {
                //                else
                //                    bandera = false;
                //            }
                //Indicamos que nos desocnectamos y cerramos el socket
                label1.Text = "Desconectando del servidor " + ipep.Address;
                server.Shutdown(SocketShutdown.Both);
                server.Close();
            }
        }

No hay comentarios:

Publicar un comentario