Académique Documents
Professionnel Documents
Culture Documents
0)
+SOFTWARE
+HARDWARE
+COMPARATIVA
+LECTORES
+TALLER
NUEVAS TECNOLOGIAS
Entrate de las noticias mas recientes del mundo de las TICS
CUAL SER EL VERDADERO NEGOCIO DE FACEBOOK.? Hay cosas que no sabes del gigante de las redes sociales.
PROGRAMACIN CON SOCKETS EN VB. NET Programar tu propio Chat paso a paso nunca fue tan fcil.
MUNDO LIBRE: Mostraremos algunas de las caractersticas mas destacadas del nuevo Ubuntu 12.04, cuales son las ventajas, que aplicaciones son las indispensables, y por supuesto mostraremos algu1 nas capturas de pantalla de esta nueva distro.
CRUZ
Hola a todos los lectores, bueno primordialmente queremos dirigir a ustedes los interesados las palabras escritas en esta revista, la cual empez como un proyecto en una red social FACEBOOK en un grupo llamado Fanticos de La de Programacin o a la Electrnica creado por DR1V3RN3T mismo que fundo Cruzsoft-SP hace ya un par de aos, la persona que siempre nos
Carlos Arroyo
ayuda cuando necesitamos cuando no sabemos qu hacer, l nos orienta y nos motiva a hacer cosas nuevas. En ya mencionado grupo de FPE y despus de 7 meses fueron surgiendo ideas estupendas entre ellas, esta revista, que lleva por nombre Cruzsoft-Magazine. En esta primera edicin presentamos temas que encontrars muy interesantes, secciones para todos los amantes de la programacin, la informtica o la electrnica, activando cierta parte de nuestro ser que nos dice No abras ningn libro Aljate de la sociedad Encirrate en un mundo donde las flores saltan de las azoteas Mientras que no nos damos cuenta de que estamos rodeados de estos temas Muchos podran pensar que los temas que se ofrecen en este ejemplar estn pensados o dirigidos para gente selecta y con amplios conocimientos, pero es simple ficcin pensar que seleccionamos a nuestros lectores, ya que la verdad es distinta, es decir, si estas leyendo esto, esta revista es para ti. Esta seccin de Lectores esta pensada especialmente para publicar tus opiniones, sugerencias, comentarios y todo tipo dudas que te surjan. Sin embargo, como es la primera edicin te invitamos a que nos escribas. Nosotros nos ponemos a tu disposicin Pgina de FaceBook: https://www.facebook.com/CruzsoftMagazineOfficial Email: cruzsoftmagazine@hotmail.com Grupo FPE: https://www.facebook.com/groups/programacion.electronica/
Contenido
El today de las tics
Toshiba no quiere quedar atrs y lanza su Tablet de 13,3 pulgadas LG comenz su produccin masiva de pantallas flexibles 7 6 Microsoft se ve obligado a pagarle a Motorola por patentes. 7 Samsung present su catlogo de productos 2012 para Latinoamrica Se lanz el Samsung Galaxy SIII: Primeras imgenes 8 8
Software
Las mejores Apps Para Android 9
Hardware
Fujitsu lleva el 3D a cualquier Smartphone DDR4, las memorias que se vienen Alerta SSD!: a causa de un bug, discos de Intel pierden datos Western Digital lanza la versin ms delgada de su disco de 1 TB 11 12 12 13
La telaraa www
Cul ser el verdadero negocio de Facebook? 15
Comparativa
Comparativa: Antivirus 2012 17
Mundo game
PSP VITA 29
Toshiba anunci la disponibilidad de tres tablets de su lnea Excite, El modelo Excite 7.7, Excite 10 y Excite 13. Algunas de las caractersticas de Excite 13 son: Android 4.0 Ice Cream Sandwich; procesador quad core NVIDIA Tegra 3; doble cmara: una frontal, de 2 megapxeles, y una trasera, de 5 MP; parlantes estreo y conectividades Wi-Fi y Bluetooth. Adems,
puesto que estoy inmerso en este mundo digital, con toda sinceridad les confieso que temo que algn da llegue simplemente un nuevo aparato que no lo pueda comprender. Hoy en da, la tecnologa es parte del sistema de vida de todas las sociedades. La ciencia y la tecnologa se estn sumando a la voluntad social y poltica de las sociedades de controlar sus propios destinos, sus medios y el poder de hacerlo. La ciencia y la tecnologa estn proporcionando a la sociedad una amplia
Hablando un poquito de su batera pues ofrece 13 horas de autonoma y siete das en stand-by. Adems, incorpora conectores micro USB y micro HDMI, y un slot de memorias SD estndar.
variedad de opciones en cuanto a lo que podra ser el destino de la humanidad. En este pequeo artculo que toma forma de investigacin, me permito ofrecerles una recopilacin obtenida de las noticias mas importantes en lo mundo de las TICS.
El fallo involucra formatos de compresin de video y podra implicar el bloqueo de la venta de Windows 7, Internet Explorer, Media Player y Xbox por suerte por ahora esto solo en Alemania.
Hola que tal amigos lectores, espero y estn disfrutando de nuestra revista ya que el equipo de Cruzsoft Magazine nos esforzamos por traerles lo mas novedoso en el mundo de la Informtica. Sin mas que decir aqu les hago llegar las Apps mas recomendadas para este gran SO (Sistema Operativo) mvil quien ha
dado un gran impacto en el mundo de la tecnologa mvil. Bueno aqu les dejo las apps recomendadas para Android.
Google Goggles
Una aplicacin de utilera mayoritariamente, aunque el uso de la misma depende directamente del usuario. Esta App te permite buscar informacin basada en el motor de bsqueda Google Imagesexplicamos un poco mses simple, tomas una fotografa de un libro, un paisaje, un cdigo de barras o cualquier tipo de producto fsico, y Google identifica dicho objeto para desplegar informacin sobre el mismo. Esencialmente es un motor visual de bsquedainteresante en realidad.
Astrid
Una App sencilla pero muy buena; Astrid te permite organizar y mantener activas listas de tareas para gestionarte automticamente desde tu telfono mvil. Se integra perfectamente a la interfaz de Android (una caracterstica que muchas Apps independientes deberan adoptar) e incluso te enva recordatorios motivacionales para cumplir con Deadlinesseamos honestos, recibir un recordatorio automtico como Come on, lets get this done es agradable para cualquiera.
Qik
Qik es un servicio convencional de videocasting, lo interesante es que esta app es totalmente gratuita. No debe compararse con Skype claro, pues Qik no es un servicio de telefona en video, ms bien es una app de broadcasting en vivo en donde podrs grabar y transmitir video a toda la web; desde tutoriales hasta conferencias, bastante til dependiendo de los trminos.
Dropbox
No podemos completar una lista de apps sin agregar Dropbox, Es simple, con Dropbox podrs subir archivos a la nube y descargarlos desde tu cuenta personal a cualquier hora, en cualquier lugar.
10
11
que Samsung lanzara una primera camada de memorias DDR4 con una trasferencia de 2113 millones/s.
12
Samsung es seguramente una de las firmas ms adelantadas en DDR4. En diciembre de 2010 ya comenzaba a distribuir muestras de sus primeros mdulos de 2Gb DDR4, mientras que para enero de 2011 ya haba completado el desarrollo de sus primeras memorias de 4Gb. Hynix, otro gigante coreano del semiconductor, lanz sus primeros pasos en el DDR4 al mes siguiente. Pero, cmo funcionan? De la misma forma que sus antecesores, las memorias DDR4 son Double Data Rate, eso quiere decir que trasladan sus datos dos veces por la memoria del bus por cada ciclo. Pero parece que eso es lo nico que emparenta a estas memorias con las anteriores DDR, ya que en lugar de
Siguen sumndose motivos para pasarnos al mbito de las porttiles: en este caso Western Digital con una unidad de 1 TB ultradelgada.
Western Digital, el reconocido fabricante de discos duros, anunci que ya inici las entregas a gran escala de la versin ms delgada de su Scorpio Blue de 1 TB, con apenas 9,5 mm de espesor y platos de 2,5 pulgadas. Esta unidad, destinada puntualmente para notebooks convencionales, cuenta con 2 platos de 500 GB, y cuenta con un sistema de reduccin del consumo de la energa, que redunda en una mayor duracin de la batera, y un mecanismo ms silencioso con menor disipacin de calor. usar varios canales compartidos para unir la memoria con el procesador, cada mdulo DDR4 tiene su propia conexin con el controlador de memoria. Evidentemente, las virtudes del DDR4 son muchas, pero hay un precio. Uno de ellos es el espacio: hay que acomodar todas esas conexiones de memoria extra en algn lugar. Las conexiones punto a punto con el micro haran que los mdulos de memoria sean ms densos en su diseo, para tratar de mantenerse en un mismo espacio. Esta mayor densidad representara un costo extra en la fabricacin.
13
mas, en tanto, es que la comunicacin directa entre cada mdulo de memoria y elCPU, si bien permiten una lectura y escritura de datos ms veloz por ciclo, complicara el manipuleo de grandes cantidades de memoria. Esta cuestin en particular podra solucionarse con interruptores digitales que reduzcan el nmero de canales conectados al controlador de memoria del micro. La obvia pregunta que surge de todo esto es cundo llegarn al hogar las DDR4? La respuesta ya no depende tanto de los fabricantes coreanos de memorias, sino de los fabricantes de micros. Justamente, Intel ya anunci que se tomar hasta 2014, momento en el cual la serie Xeon Haswell-EXincluir esta tecnologa. Probablemente los usuarios hogareos tengan que esperar to-
El hardware se divide en 200.000 discos rgidos que se encuentran almacenados en racks muy parecidos a los utilizados en la actualidad, que adems, cuentan con un sistema de refrigeracin lquida muy avanzado.
14
DR1V3RN3T
timo ao, recibiendo un promedio de 350,000 nuevos miembros todos los das, ninguno de los cuales paga absolutamente nada por los servicios recibidos. Entonces nace la siguiente cuestin: Cmo le hace Facebook para tener los recursos necesarios para de esta manera atender 100,000,000 de miembros activos que publican un promedio de 20,000,000 de tontas fotografas todos los das? Me resulta difcil imaginar siquiera el tamao colosal de sus computadoras y servidores y adems del elevadsimo coste de tecnologa y de gastos salariales que se requiere para alojar y administrar esa aparatosa cifra de usuarios. Una vez digeridas las astronmicas cifras que rodean a Facebook y tratando de contestar semejante interrogante se me hace ridculo pensar que se financie exclusivamente con la publicidad. Pero, Entonces cmo lo harn?. Una posible respuesta nace de mi ligera investigacin y digo posible por que no puedo afirmar nada, solo puedo ofrecer resultados parciales y dejarlo asimilar por el libre albedrio del lector.
15
De hecho, estn autorizando a Facebook el uso imperecedero y transferible, junto con los derechos de distribucin o expansin pblica de todo lo que suban en su pgina web. Verdad que apenas te vienes enterando de esto?. Los trminos que aceptaste facultan a Facebook el derecho a conceder y licenciar todo tu contenido a otros negocios. Nunca te has preguntado cmo es que la bandeja de entrada de tu correo electrnico a veces se ve infestada por propaganda, anuncios o correos no deseados de remitentes que desconoces totalmente? Cmo es que saben nuestro correo, quin se los dio?, dejo estas preguntas al aire.
Se dice que en la mafia solo se sale muerto pero de Facebook ni muerto te liberas del todo.
Bueno imaginemos que decides cancelar tu afiliacin a Facebook pero para colmo de males, el asunto no termina si el usuario se decide retirar. Aun cuando los usuarios cancelan la afiliacin, sus fotos e informacin permanecen en el servidor, segn Facebook, por si deciden reactivar su cuenta. Es ms, el usuario no es retirado ni siquiera cuando fallece. De acuerdo con las condiciones de uso, los herederos no pueden obligar a que Facebook descuelgue los datos e imgenes de sus deudos, ya que cuando el finado acept el contrato virtual, le otorg a Facebook el derecho de mantenerlo activo bajo un status especial de conmemoracin por un perodo de tiempo determinado por la empresa para permitir que otros usuarios puedan publicar y observar comentarios sobre el difunto. En fin. Todos los usuarios de Facebook somos partcipes indefensos de un escenario que los acadmicos consideran que es el caso de espionaje ms grande en la historia de la humanidad. Si te gusto este articulo dale en
16
Cuantas veces te habrs preguntado Cul es el mejor antivirus gratuito? Cul es ms rpido y cul detecta ms malware
DR1V3RN3T
En esta seccin pretendo mostrarles a ustedes un estudio precisamente que intenta resolver esta interrogante analizando cinco grandes antivirus Freeware: 1. Avast! 2. AVG 3. Avira, 4. PandaCloud 5. MSE
17
18
19
Cmo
compara-
Funcionalidad (45%): Es til? Qu funcionalidades tiene? Calidad (20%): Es estable y rpido? Tiene errores? Usabilidad (15%): Es fcil de usar? Es agradable a la vista?
20
A esto hay que sumar un 10% de opinin personal y otro 10% que se refiere a la calidad de la traduccin al espaol (si no hay, este apartado se lleva un cero). La nota resultante solo es un 30% de la nota final de un antivirus: el 70% restante viene de los datos de eficacia y rendimiento.
Estos datos se obtienen principalmente de nuestro partner Virus-Bulletin , la agencia independiente de anlisis de los productos de seguridad informtica ms prestigiosa. Tambin consult otras fuentes (AV-Test , AV-Comparatives ) para obtener una imagen ms completa.
21
Resultado
avast!, gracias a una eficacia excepcional, un buen rendimiento y, sobre todo, la abundancia de funciones y facilidad de uso. Una vez ms, su gran equilibrio y generosidad lo hacen merecedor de la victoria. Plata para Avira AntiVir. Tiene la mejor proteccin y un gran rendimiento, pero su aspecto anticuado y la falta de opciones hace que se quede con el segundo puesto. Si ofreciese ms funciones, se quedara sin problemas con el oro. En tercer lugar, Panda y AVG empatan, pero Panda gana el bronce por su velocidad. ltimo puesto para MSE, que, aun siendo una vlida solucin de seguridad no consigue superar a los pesos pesados.
Qu te parece el resultado?
22
Zevachs
de una avera supone, la prdida de tiempo de trabajo de un empleado o incluso detener procesos enteros, lo que representa obviamente prdida monetaria. En este apartado cabe mencionar que nos enfocaremos al mantenimiento bsico del Hardware. Muchos usuarios se preguntan el tiempo en que es recomendable dar mantenimiento a su PC, aunque la respuesta siempre estar en funcin de muchos factores, como por ejemplo el modo en que se use el quipo, la frecuencia en que est en servicio, e incluso hasta las caracters-
23
PASO 1: Destapamos el chasis o torre y desconectamos los suministros de energa de la pc (fuente de poder a tarjeta madre)
24
PASO 6: Desatornillamos las unidades de CD-ROM y Disco duro y las retiramos del chasis
25
PASO 10: Limpiamos con la brocha el chasis o torre (Se recomienda usar el Aire comprimido)
26
PASO 14: Reconectamos todos los suministros de energa de la fuente de poder alas unidades de la PC
27
Recordemos que los componentes de nuestra PC son delicados, por lo que el mantenimiento de los mismos debe darse con mucho cuidado. Espero que les haya servido este pequeo taller paso a paso y no se pierdan la prxima edicin. Hasta pronto.
28
DR1V3RN3T
PSP VITA
El sistema fue anunciado el 27 de enero de 2011 en el "Playstation meeting" en Japn por el presidente de Sony Computer Entertainment, Kazuo Hirai. La ltima vez que se hizo una "Playstation mee-
ting" fue para coordinar los planes de lanzamiento de la Playstation 3, en el ao 2005. Adems MCV dice que Sony le dijo a las distribuidoras que el sistema seria "tan poderoso como la PS3", tambin dicen que los juegos del sistema se distribuirn tanto en formato fsico como digital.
29
Adems se anunci que slo tres de los cuatro ncleos de la unidad central de procesamiento simtrica estarn disponibles para las aplicaciones y que las dos cmaras tendrn deteccin de cara, de cabeza y seguimiento de cabeza. El da 7 de junio, en la Electronic Entertainment Expo 2011, Sony confirm que el nombre definitivo del sistema sera Playstation Vita. Dijeron escoger ese nombre porque vita significa "vida" en latn. La porttil combina realidad aumentada, videojuegos, y conectividad social, junto a servicios como "Near" y "Party", exclusivos de la consola. En cuanto al software y a diferencia de PSP y PlayStation 3, PlayStation Vita no utiliza la interfaz
XrossMediaBar. En su lugar utiliza una interfaz de usuario basada en pantalla tctil llamada LiveArea, permitiendo el uso de las aplica ciones atraves de control tctil de forma sencilla. En el lanzamiento de la PlayStation Vita navegador no soporta Flash. Sin embargo, HTML5, las cookies y Javascript estn disponibles. Por otro lado y en tema de almacenamiento El software para la consola se distribuye en una tarjeta de memoria propia de Sony de tio flashllamada PlayStation Vita Game card, en lugar de los discos UMD de la PSP. En tamao y forma la PSVita Card es muy similar a una tarjeta SD. Ciertas aplicaciones de media y juegos requerirn para su funcionamiento, que tanto la PSVita card como la PSVita memoy card estn conectadas al sistema. Entre un 5 y un 10% del espacio se reserva para guardar datos, parches, etc. La PSVita memory card se ofrece en tamaos que van desde los 4 GB hasta los 32GB. Otras tarjetas de memoria que no tengan la marca PlayStation Vita memory card no sern compatibles.
30
Aqu presento las siguientes especificaciones mismas que fueron mostradas en el sitio web de Playstation:
CPU
GPU
RAM
Dimensiones
Resolucin
Pantalla
Touchpad trasero
Cmaras
Sonido
Deteccin de movimiento
Deteccin de posicin
GPS
Botones
Conectividad inalmbrica
Conectividad a redes mviles 3G (segn el modelo de la consola), conectividad Wi-Fi IEEE 802.11b/g/n (n = 1x1) tanto en modo infraestructura como ad-hoc, Bluetooth 2.1+EDR (A2DP/AVRCP/HSP)
31
BAEZZ
rios conectar directamente con lo que desean, sin necesidad de recorrer un rbol de mens al estilo tradicional.
Unity 2D
El aspecto visual de Unity 2D es el mismo que en el caso de la 3D y, en un cambio de ltima hora, va a contar tambin con HUD. En el momento actual de la beta, aun habiendo actualizado
Que es HUD?
HUD es el nuevo sistema de mens inteligentes de Unity, que permite a los usua-
todos los paquetes a los ltimos disponibles, HUD no funciona en Unity 2D. En la versin 3D s funciona, pero los resultados son imprecisos.
Vdeo Lens
En Ubuntu 12.04 LTS Precise Pangolin vamos a encontrar una nueva lente dedicada al vdeo. Con el nuevo botn podemos buscar vdeo dentro de nuestro equipo, y en servicios online como YouTube, Vimeo y similares.
32
Gestin de energa
Muestra de cmo se va a abordar el consumo de energa en los equipos porttiles, en esta beta se ha incluido por defecto RC6 Power Management. Esta tecnologa permite que la GPU entre en modo de baja potencia cuando est inactiva, en procesadores Intel Sandy Bridge.
Que es GPU?
Una GPU es una CPU dedicada exclusivamente al procesamiento de grficos, para aligerar la carga de trabajo del procesador central en aplicaciones como los videojuegos. De esta forma, mientras gran parte de lo relacionado con los grficos se procesa en la GPU, la CPU puede dedicarse a otro tipo de clculos (como la inteligencia artificial o los clculos mecnicos en el caso de los videojuegos).
Ncleo y aplicaciones.
La versin del ncleo que trae esta beta es 3.2.0-17.27, basada en la reciente 3.2.6 del Kernel de Linux. Esto puede cambiar en la versin final, como las aplicaciones. El navegador por defecto es Firefox 11, producto que se encuentra en fase beta tambin en este
a LibreOffice 3.5, de reciente aparicin. Tambin encontraremos en esta beta el administrador de archivos Nautilus en versin 3.3.5 y otro cambio en el reproductor multimedia por defecto, que ahora es Rhythmbox, con soporte incluido para la tienda de msica Ubuntu One Music Store.
33
Dariux
gramacin o ala Electrnica y desearles a ustedes los lectores mucha suerte y que nunca
olviden que el conocimiento es libre. Bueno dganme ustedes A quien no le ha dado curiosidad el saber como fue creado un software famossimo en sus tiempos y hasta ahora me refiero al Windows Live Messenger? Bueno en este tutorial hemos estado indagando y pues llegamos a la conclusin de l porque no ensear dicho cdigo para que cada uno de ustedes creen su propio chat o esto se oye interesante! Bueno as como yo hay muchos jvenes que siempre han querido buscar la privacidad en sus conversaciones por lo ms mnimas que sean y en este pequeo tutorial harn realidad su imaginacin aqu aprendern como crear su propio servidor de chats as como los clientes los cuales si no me dejaran mentir somos la gran mayora en el Messenger o no.
34
Empecemos
Bueno vayamos ya de una vez al grano debido a que este tutorial debe ser corto y bien explicado espero que entiendan, para empezar debemos crear dos libreras una llamada Servidor.dll y otra llamada Cliente.dll estas libreras nos servirn para poder conectar al servidor de una manera mas rpida y sencilla para los que no saben como crear dichas libreras nos trasladamos al Visual Studio en mi caso es el 2010 Ultmate pero ustedes pueden usar cualquier otra versin que gusten, bueno una vez estando en el visual studio vamos a crear un nuevo proyecto en la parte de Windows aparecern las siguientes opciones, seleccionamos Biblioteca de controles de Windows Forms y le asignamos un nombre el cual ser Servidor como ya habamos dicho antes y presionamos en el botn aceptar. En este curso solo haremos todo lo relacionado con el servidor y en la prxima Bueno una vez que tengamos ya creado el cuerpo de nuestra librera vamos a ponerle la mente la cual es el bendito cdigo, bueno se me olvidaba antes de codificar debemos de cambiarle el nombre al control esto se hace en el explorador de soluciones damos clic derecho en UserControl.vb y seleccionamos la opcin de cambiar nombre, ahora le asignamos Servidor.vb bueno una vez hecho esto y teniendo presionando este control presionamos la tecla F7 para pasar al modo de cdigo y vermos que lo tendremos de la siguiente manera: haremos el cliente para llevar un mejor control.
35
'Primero importamos los componentes que nesesitara nuestro servidor :D Imports System Imports System.Threading Imports System.Net.Sockets Imports System.IO Imports System.Text Public Class Servidor #Region "ESTRUCTURAS" Private Structure InfoDeUnCliente 'Esta estructura permite guardar la informacin 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 conectad os 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 End Property #End Region
36
#Region "METODOS" Public Sub Escuchar() tcpLsn = New TcpListener(PuertoDeEscucha) 'Inicio la escucha tcpLsn.Start() 'Creo un thread para que se quede escuchando la llegada de un cliente tcpThd = New Thread(AddressOf EsperarCliente) tcpThd.Start() End Sub Public Function ObtenerDatos(ByVal IDCliente As Net.IPEndPoint) As String Dim InfoClienteSolicitado As InfoDeUnCliente 'Obtengo la informacion del cliente solicitado InfoClienteSolicitado = Clientes(IDCliente) ObtenerDatos = InfoClienteSolicitado.UltimosDatosRecibidos End Function Public Sub Cerrar(ByVal IDCliente As Net.IPEndPoint) Dim InfoClienteActual As InfoDeUnCliente 'Obtengo la informacion del cliente solicitado InfoClienteActual = Clientes(IDCliente) 'Cierro la conexion con el cliente InfoClienteActual.Socket.Close() End Sub Public Sub Cerrar() Dim InfoClienteActual As InfoDeUnCliente 'Recorro todos los clientes y voy cerrando las conexiones For Each InfoClienteActual In Clientes.Values Call Cerrar(InfoClienteActual.Socket.RemoteEndPoint) Next End Sub Public Sub EnviarDatos(ByVal IDCliente As Net.IPEndPoint, ByVal Datos As String) Dim Cliente As InfoDeUnCliente 'Obtengo la informacion del cliente al que se le quiere enviar el mensaje Cliente = Clientes(IDCliente) 'Le envio el mensaje Cliente.Socket.Send(Encoding.ASCII.GetBytes(Datos)) End Sub Public Sub EnviarDatos(ByVal Datos As String) Dim Cliente As InfoDeUnCliente 'Recorro todos los clientes conectados, y les envio el mensaje recibido 'en el parametro Datos For Each Cliente In Clientes.Values EnviarDatos(Cliente.Socket.RemoteEndPoint, Datos) Next End Sub #End Region #Region "FUNCIONES PRIVADAS" Private Sub EsperarCliente() Dim InfoClienteActual As InfoDeUnCliente With InfoClienteActual While True 'Cuando se recibe la conexion, guardo la informacion del cliente 'Guardo el Socket que utilizo para mantener la conexion con el cliente .Socket = tcpLsn.AcceptSocket() 'Se queda esperando la conexion de un cliente 'Guardo el el RemoteEndPoint, que utilizo para identificar al cliente IDClienteActual = .Socket.RemoteEndPoint 'Creo un Thread para que se encargue de escuchar los mensaje del cliente .Thread = New Thread(AddressOf LeerSocket)
37
'Agrego la informacion del cliente al HashArray Clientes, donde esta la 'informacion de todos estos SyncLock Me Clientes.Add(IDClienteActual, InfoClienteActual) End SyncLock 'Genero el evento Nueva conexion RaiseEvent NuevaConexion(IDClienteActual) 'Inicio el thread encargado de escuchar los mensajes del cliente .Thread.Start() End While End With End Sub Private Sub LeerSocket() Dim IDReal As Net.IPEndPoint 'ID del cliente que se va a escuchar Dim Recibir() As Byte 'Array utilizado para recibir los datos que llegan Dim InfoClienteActual As InfoDeUnCliente 'Informacion del cliente que se va escuchar Dim Ret As Integer = 0 IDReal = IDClienteActual InfoClienteActual = Clientes(IDReal) With InfoClienteActual While True If .Socket.Connected Then Recibir = New Byte(100) {} Try 'Me quedo esperando a que llegue un mensaje desde el cliente Ret = .Socket.Receive(Recibir, Recibir.Length, SocketFlags.None) If Ret > 0 Then 'Guardo el mensaje recibido .UltimosDatosRecibidos = Encoding.ASCII.GetString(Recibir) Clientes(IDReal) = InfoClienteActual 'Genero el evento de la recepcion del mensaje RaiseEvent DatosRecibidos(IDReal) Else 'Genero el evento de la finalizacion de la conexion RaiseEvent ConexionTerminada(IDReal) Exit While End If Catch e As Exception If Not .Socket.Connected Then 'Genero el evento de la finalizacion de la conexion RaiseEvent ConexionTerminada(IDReal) Exit While End If End Try End If End While Call CerrarThread(IDReal) End With End Sub
38
Private Sub CerrarThread(ByVal IDCliente As Net.IPEndPoint) Dim InfoClienteActual As InfoDeUnCliente 'Cierro el thread que se encargaba de escuchar al cliente especificado InfoClienteActual = Clientes(IDCliente) Try InfoClienteActual.Thread.Abort() Catch e As Exception SyncLock Me 'Elimino el cliente del HashArray que guarda la informacion de los clientes Clientes.Remove(IDCliente) End SyncLock End Try End Sub #End Region End Class
Bueno una vez que tengamos este pequeo cdigo vamos a la pestaa de generar de nuestro Visual y le damos a Generar Servidor y nos daremos cuenta que ya se ha creado un archivo llamado Servidor.DLL en nuestra carpeta Bin/Debug bueno esto solo es el archivo para las referencias. Ahora crearemos una aplicacin en donde usaremos dicha referencia bueno para empezar vamos al explorador de soluciones y en la carpeta de referencias y damos clic derecho y damos en agregar referencia y buscamos el Servidor dll y lo agregamos. Una vez hecho esto vamos a crear el diseo simple de nuestro formulario el cual contendr lo siguiente:
Un TextBox con el nombre de txtMensaje Un Boton con el nombre de btnEnviarMensaje Nuestro formulario deber de quedar de la siguiente manera.
39
40
Bueno asta aqu lo dejaremos por hoy vean la prxima revista para poder terminar con el cliente y luego explicare mas detalladamente como hacerlo con IPs pblicas eso ser mas interesante espero que no se lo pierdan y espero que no se hayan perdido en ningn paso. Nos vemos en la prxima edicin la cual ser: Trabajando con el Cliente.
Zevachs
DR1V3RN3T
Dariux
41
42