Beispiel #1
0
        static void Main(string[] args)
        {
            int         puerto        = 8080;
            TcpListener socketEscucha = new TcpListener(IPAddress.Any, puerto);

            socketEscucha.Start();
            TcpClient          cliente       = socketEscucha.AcceptTcpClient();
            DecodificadorTexto decodificador = new DecodificadorTexto();
            Elemento           elemento      = decodificador.Decodificar(cliente.GetStream());

            Empleado EmpleadoR = new Empleado();

            EmpleadoR = buscarEmpleado(elemento);

            CodificadorTexto codificador = new CodificadorTexto();
            ElementoLogin    elemento2;

            if (EmpleadoR == null)
            {
                elemento2 = new ElementoLogin(null, null, 0);
            }
            else
            {
                elemento2 = new ElementoLogin(EmpleadoR.nombre, EmpleadoR.apellido, 1);
            }

            byte[] bytesParaEnviar = codificador.CodificarLogin(elemento2);
            Console.WriteLine("(" + bytesParaEnviar.Length + " bytes): ");
            cliente.GetStream().Write(bytesParaEnviar, 0, bytesParaEnviar.Length);
            cliente.Close();
            socketEscucha.Stop();
            Console.ReadLine();
        }
Beispiel #2
0
        private void btnIngresar_Click(object sender, EventArgs e)
        {
            Thread.Sleep(500);
            IPAddress  servidor = IPAddress.Parse("127.0.0.1");
            int        puerto   = 8080;
            IPEndPoint extremo  = new IPEndPoint(servidor, puerto);
            TcpClient  cliente  = new TcpClient();

            cliente.Connect(extremo);
            NetworkStream    flujoRed    = cliente.GetStream();
            Elemento         elemento    = new Elemento(txtuser.Text, txtPass.Text, 1);
            CodificadorTexto codificador = new CodificadorTexto();

            byte[] datosCodificados = codificador.Codificar(elemento);
            flujoRed.Write(datosCodificados, 0, datosCodificados.Length);
            DecodificadorTexto decodificador    = new DecodificadorTexto();
            ElementoLogin      elementoRecibido = decodificador.DecodificarLogin(cliente.GetStream());

            if (elementoRecibido.validacion == 1)
            {
                emlog.nombre   = elementoRecibido.nombre;
                emlog.apellido = elementoRecibido.apellido;
                frmJornada n1 = new frmJornada();
                n1.Show();
            }
            else
            {
                MessageBox.Show("Usuario no encontrado", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                limpiarCampos();
                txtuser.Focus();
            }
            flujoRed.Close();
            cliente.Close();
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            //tiempo para dormir el proceso
            Thread.Sleep(500);
            // se define la ip del servidor a conectarse
            IPAddress servidor = IPAddress.Parse("127.0.0.1");
            //se especifica el puerto por el cual debe conectarse
            int puerto = 8082;
            //se crea un pnto remoto que será el servidor al que nos conectaremos
            IPEndPoint extremo = new IPEndPoint(servidor, puerto);
            //se crea un cliente tcp para proceder a la solicitud de conexión conexión
            TcpClient cliente = new TcpClient();

            cliente.Connect(extremo);


            //Se llama al método get stream usando network stream para envío y
            //recepción de bytes
            NetworkStream flujoRed = cliente.GetStream();
            // Se crean los elementos que serán enviados
            Elemento elemento = new Elemento(1234567890987654L, "Cadena de Bicicleta", 18, 1000, true, false);
            //se procede a la codificación del elemento, y se los transforma en bytes para su envío
            CodificadorTexto codificador = new CodificadorTexto();

            byte[] datosCodificados = codificador.Codificar(elemento);
            Console.WriteLine("Enviando elemento codificado en texto (" + datosCodificados.Length + " bytes): ");
            Console.WriteLine(elemento);
            // se procede a recuperar los datos enviados.
            flujoRed.Write(datosCodificados, 0, datosCodificados.Length);



            DecodificadorBinario decodificador    = new DecodificadorBinario();
            Elemento             elementoRecibido = decodificador.Decodificar(cliente.GetStream());

            Console.WriteLine("Se recibio un elemento codificado en formato binario:");
            Console.WriteLine(elementoRecibido);

            // ### Modifica el programa para enviar dos elementos y recibir dos elementos.
            // ### Si  se requiere ver el funcionamiento original del programa comente las siguientes
            // ### lineas hasta encontrar la linea //###

            elemento = new Elemento(1234567890123456L, "Bicicleta", 18, 50000, true, true);
            //se procede a la codificación del elemento, y se los transforma en bytes para su envío
            codificador      = new CodificadorTexto();
            datosCodificados = codificador.Codificar(elemento);
            Console.WriteLine("Enviando elemento codificado en texto (" + datosCodificados.Length + " bytes): ");
            Console.WriteLine(elemento);
            // se procede a recuperar los datos enviados.
            flujoRed.Write(datosCodificados, 0, datosCodificados.Length);
            decodificador    = new DecodificadorBinario();
            elementoRecibido = decodificador.Decodificar(cliente.GetStream());
            Console.WriteLine("Se recibio un elemento codificado en formato binario:");
            Console.WriteLine(elementoRecibido);

            //###



            //se Cierra el network stream para finalizar la conexión adecuadamente
            flujoRed.Close();
            //se cierra la conexión con el cliente
            cliente.Close();
        }
Beispiel #4
0
        static void Main(string[] args)
        {
            //Tiempo que pasa dormido el cliente
            Thread.Sleep(500);

            //Creamos el socket para poder comunicarnos con el servidor
            IPAddress  servidor = IPAddress.Parse("127.0.0.1");
            int        puerto   = 8080;
            IPEndPoint extremo  = new IPEndPoint(servidor, puerto);

            //Creamos un cliente TCP y nos conectamos
            TcpClient cliente = new TcpClient();

            cliente.Connect(extremo);

            //Nos proporciona la secuencia de datos para el acceso a la red
            NetworkStream flujoRed = cliente.GetStream();

            Elemento elemento1 = new Elemento(1234567890987654L, "Cadena de Bicicleta", 18, 1000, true, false);

            //Modifiacion para enviar dos elementos

            Elemento elemento2 = new Elemento(987654321012345L, "Casco de Bicicleta", 20, 45, true, true);


            //Utilizamos la libreria que creamos con el metodo Codificador Texto
            CodificadorTexto codificador = new CodificadorTexto();

            byte[] datosCodificados = codificador.Codificar(elemento1);
            Console.WriteLine("Enviando elemento codificado en texto (" + datosCodificados.Length + " bytes): ");
            Console.WriteLine(elemento1);

            NetworkStream flujoRed2 = cliente.GetStream();

            CodificadorTexto codificador1 = new CodificadorTexto();

            byte[] datosCodificados1 = codificador1.Codificar(elemento2);
            Console.WriteLine("Enviando elemento codificado en texto (" + datosCodificados1.Length + " bytes): ");
            Console.WriteLine(elemento2);

            //Procedemos a enviar los datos por la red

            flujoRed.Write(datosCodificados, 0, datosCodificados.Length);
            flujoRed2.Write(datosCodificados1, 0, datosCodificados1.Length);

            //Como tenemos un servidor ECO, ahora tenemos que realizar el rproceso contrario, el decodificador.

            DecodificadorBinario decodificador    = new DecodificadorBinario();
            Elemento             elementoRecibido = decodificador.Decodificar(cliente.GetStream());

            DecodificadorBinario decodificador1    = new DecodificadorBinario();
            Elemento             elementoRecibido1 = decodificador1.Decodificar(cliente.GetStream());

            //Impresion del texto recibido
            Console.WriteLine("Se recibio un elemento codificado en formato binario:");
            Console.WriteLine(elementoRecibido);

            Console.WriteLine("Se recibio un elemento codificado en formato binario:");
            Console.WriteLine(elementoRecibido1);

            flujoRed.Close();
            cliente.Close();
        }