Sábado, 2024-11-23, 4:44 AM
Le saludo visitante | RSS
[ Mensajes nuevos · Participantes · Reglas del foro · Búsqueda · RSS ]
NUEVO TEMA CREADO
este foro ya no estar en su mantenimiento no mudamos a la siguiente dirección

www.inforprograma.net

  • Página 1 de 1
  • 1
enviar fichero de un pc a otros pc usando Socret en net
jesuliFecha: Domingo, 2009-09-27, 9:30 PM | Mensaje # 1
Teniente
Grupo: Administradores
Mensajes: 77
Estatus: Offline

enviar fichero de un pc a otros pc usando Socret en net
anteriormente explique en un post como subir fichero a un servido, y ahora voy a explicar como enviar fichero entre un ordenador a otros, de un tamaño máximo de 200 MB usado socret en NET.

el ejemplo de este articulo. voy a enseña crear un socret, y ponerlo a la escucha en un determinado puerto.

¿ QUE ES UN SOCRET ?
el concepto de socret, consiste en dos programa, situado el ordenadores distinto, se pueda comunicar y enviar datos entres ello, de forma trasparente.

un socret esta definido por una dirección IP, un protocolo de transporte, y un numero de puerto.

para que dos programa pueda comunicare entre si, necesita que cumpla cierto requisito

-- que los dos programa pueda comunicarse entre si, localizarse.
-- que puedan enviar y intercambiarse cualquier tipo de paquete de datos. según el protocolo usado.

los concepto de socret son tres
-- un protocolo de comunicación que permita el intemcabio de paquete de datos
-- una dirección de red (dirección IP de una computadora)
-- un numero de puerto(donde escucha la comunicación)


la arquitectura es un socret es de cliente y servidor. no son mas que dos programa que uno hacer de servidor y otros de cliente.

el programa servidor, cuando esta en ejecución, se queda a la escucha, en un determinado puerto de pc. pendiente de recibir datos, por ese puerto. cuando se conecta el programa cliente.

el programa cliente, es el que enviar los datos a servidor, aunque dependiendo como allá sido programado el programa servidor, puede enviar datos, a programa cliente, pero por los general, el servidor es que recibe datos de cliente, los procesa, o los guarda según en su programación.

ahora que vemos explicado un poco los que es un socret, vamos a crear dos programa que se comunique entre si mediante socret, y podramos enviar fichero de un ordenador a otros.
ante de crear los dos programa, iré explicando como ser crea un socket su implementacion.

para programar en socret en net se usa el espacio de nombre System.Net.Sockets.

para crear un socret se hace de la siguiente manera.

Quote
Socket MiprimerSocket; //nuestro objecto socret

Creamos una instancia de socket, mediante el constructor de la clases socret, le pasamos a nuestro socret los tres concepto de socket que son

El parámetro addressFamily, especifica el esquema de direcciones utilizado por la clase Socket.

socketType especifica el tipo de la clase Socket.

protocolType, especifica el protocolo utilizado por Socket..

Quote
MiprimerSocret = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP);

Una ver creado la instancia de nuestro socket, tenemos que asociarlo a nuestro pc local. mediante el método Bind();, el método Bind();, necesita en su parámetros un objeto de tipo IPEndPoint.

Así que ante de llama a método Bind(); crearemos el objeto IPEndPoint;
De la siguiente manera.

Quote
IPEndPoint ipEnd;
ipEnd = new IPEndPoint(IPAddress.Any, 5656);

IPEndPoint solo tiene dos parámetros, que puede ser la IP de ordenador local. o bien la dirección IP de otros ordenador. o de una dirección de una pagina Web con su dirección IP. Para la dirección ip local de pc se usa la contaste IPAddress.Any.

El segundo parámetros es el puerto por donde escuchara nuestro socket.
Una ver ya asociado nuestro pc local, ya podemos llama a método Bind(); de la siguiente forma.

Quote
MiprimerSocret.Bind(ipEnd);

Ya tenemos nuestro socket creado, y con los datos necesario, ahora es hora de poner nuestro socket a la escucha de la siguiente manera.

Quote
MiprimerSocret.Listen(100);

El método Listen(); se encarga de escucha la conexione, los intentos de conexión entrantes por el puerto. Listen solo tiene un parámetros, y es especifica el número de conexiones entrantes que pueden situarse en cola para su aceptación. En este caso yo los es puesto a que acepte 100 conexiones en la cola.

Tenemos a nuestro socret escuchando conexiones entrantes por el puerto 5656

Solo queda en acepta la conexiones de la cola de conexiones entrante y crear un nuevo socret para esa conexión.

Mediante el método Accept(); que creara un nuevo socret en la conexiones establecida de la cola de conexiones de nuestro socret de la siguiente manera.

Quote
Socket NuevoSocret = MiprimerSocret.Accept();

el métodos .Accept(); devolverá un objeto socret. El objeto que devuelve Accept(); los guardamos el objeto socret NuevoSocret.

El nuevo socret recibido por el método Accept();
Con este socret nuevo, atenderemos a una conexión de la cola, y hacemos operaciones con este nuevo socret, pero solo para esa conexión establecida. es decir que solo no sirve para una conexión entrantes.

Para recibir datos usaremos el métodos Receive();
y para enviar datos usaremos el métodos Send();

Cuando ya vemos atendido todas las conexiones entrantes, tendremos que cerrar el socret. y con ello dejamos de escucha conexiones entrantes. Es decir, los desconectamos de la red.
Se hacer de la siguiente manera

Quote
NuevoSocret.Close();

y eso es todos así es como se crea un socret, son los paso necesario para la creación de un socret. los paso de creación de un socret y ponerlo a la escucha son siempre los mismo.

Ahora que vemos explicado como se crea un socret, es la hora de crea dos programa, que uno será el servido, y otros será el cliente, el programa servidor, que estará en otros pc. se encargara de recibir el fichero enviado por el cliente, y los guardara en una carpeta configurado de antemano por el usuario.

El programa cliente alojado en otros pc, se encargara de enviar fichero a programa servidor.

Como ya es explicado el funcionamiento de la creación de un socrek, no tiene ya misterio que explique el código de los dos programa. de todos modo es añadido a código, de los dos programa, mucho comentario que explica por si solo cada zona de código de programa.

Ventana de captura de el programa servidor

Ventana de Captura de programa Cliente


descarga codigo fuerte de servidor


descarga codigo fuerte de cliente



[center][/center]
http://www.codigocero.ucoz.es
 
  • Página 1 de 1
  • 1
Búscar:

Usuario Que ha Visitado el sitio
Copyright MyCorp © 2024
Sitio administrado por el sistema de uCoz