ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Sistema Operativos


Enviado por   •  6 de Marzo de 2012  •  4.551 Palabras (19 Páginas)  •  266 Visitas

Página 1 de 19

El Servidor

Propiedades

PuertoDeEscucha() As String

Establece/devuelve el puerto donde se quiere que el servidor quede “escuchando”.

Métodos

Escuchar()

Inicia el proceso de escuchar peticiones de conexión de parte de los clientes, en el puerto establecido en la propiedad PuertoDeEscucha.

ObtenerDatos(ByVal IDCliente As Net.IPEndPoint) As String

Obtiene los últimos datos enviados por el cliente especificado.

Cerrar(ByVal IDCliente As Net.IPEndPoint)

Cierra la conexión con el cliente especificado.

Cerrar()

Cierra todas las conexiones abiertas con los clientes.

EnviarDatos(ByVal IDCliente As Net.IPEndPoint, ByVal Datos As String)

Envía un mensaje al cliente especificado.

EnviarDatos(ByVal Datos As String)

Envía un mensaje a todas los clientes.

Eventos

NuevaConexion(ByVal IDTerminal As Net.IPEndPoint)

Se produce cuando un Cliente se conecta al Servidor, y nos devuelve un ID, para que podamos identificarlo mas tarde.

DatosRecibidos(ByVal IDTerminal As Net.IPEndPoint)

Se produce cuando un Cliente nos envía un mensaje. Para obtener los datos recibidos, usaremos el método ObtenerDatos pasándole como parámetro el ID del cliente.

ConexionTerminada(ByVal IDTerminal As Net.IPEndPoint)

Nos avisa que se ha cerrado la conexión con el Cliente recibido como parámetro.

El Cliente

Propiedades

IPDelHost() As String

Establece/devuelve la dirección IP (o el nombre DNS) del equipo donde se encuentra el objeto de la clase Servidor.

PuertoDelHost() As String

Establece/devuelve el numero de puerto en el que estará escuchando el objeto de la clase Servidor al cual nos queremos conectar.

Métodos

Conectar()

Permite conectarse al objeto Servidor que se encuentra escuchando en la dirección especificada por la propiedad IPDelHost en el puerto establecido en la propiedad PuertoDelHost.

EnviarDatos(ByVal Datos As String)

Envía un mensaje al objeto de la clase Servidor a la que se este conectado.

Eventos

ConexionTerminada()

Se produce cuando se termina la conexión con el objeto Servidor.

DatosRecibidos(ByVal Datos As String)

Nos avisa que el servidor nos ha enviado un mensaje, y el mismo se encuentra en el parámetro “Datos”.

Al fin, ahora si llego la hora de ver código… empecemos.

Código de la clase Servidor

Imports System

Imports System.Threading

Imports System.Net.Sockets

Imports System.IO

Imports System.Text

Public Class WinSockServer

#Region "ESTRUCTURAS"

Private Structure InfoDeUnCliente

'Esta estructura permite guardar la información sobre un cliente

Public Socket As Socket 'Socket utilizado para mantener la conexion con el cliente

Public Thread As Thread 'Thread utilizado para escuchar al cliente

Public UltimosDatosRecibidos As String 'Ultimos datos enviados por el cliente

End Structure

#End Region

#Region "VARIABLES"

Private tcpLsn As TcpListener

Private Clientes As New Hashtable() 'Aqui se guarda la informacion de todos los clientes conectados

Private tcpThd As Thread

Private IDClienteActual As Net.IPEndPoint 'Ultimo cliente conectado

Private m_PuertoDeEscucha As String

#End Region

#Region "EVENTOS"

Public Event NuevaConexion(ByVal IDTerminal As Net.IPEndPoint)

Public Event DatosRecibidos(ByVal IDTerminal As Net.IPEndPoint)

Public Event ConexionTerminada(ByVal IDTerminal As Net.IPEndPoint)

#End Region

#Region "PROPIEDADES"

Property PuertoDeEscucha() As String

Get

PuertoDeEscucha = m_PuertoDeEscucha

End Get

Set(ByVal Value As String)

m_PuertoDeEscucha = Value

End Set

...

Descargar como (para miembros actualizados)  txt (17 Kb)  
Leer 18 páginas más »
Disponible sólo en Clubensayos.com