Chat - Version Delphi
Presentación
En lo que respecta al programa, el original lo escribí en C++ Builder 6.0, pero resulta que Delphi también es compatible con este pues ambos compilan código Pascal a fin de cuentas, así que no importan realmente en que se desarrolle si Delphi o C++ Builder a las finales el resultado no varían entre ellos, por eso es que mutamos este código a Delphi para ver algunas semejansas y aprender un poco mas acerca de los Sockets y el protocolo TCP/IP que es con el que trabajan las clases TClientSocket y TServerSocket
El Protocolo TCP/IP
Lo que debes saber es que TCP/IP necesita de una conexión entre Servidor-Cliente de este modo puede comprobar si los paquetes que se envian llegan con integridad o no de modo que corrija los envios si tiene que hacerlo. Ademas de esto
Winsock API
Sockets
Chaski - Cliente/Servidor
En nuestro ejemplo ambos módulos fueron desarrollados en Delphi 7 - pero testeamos el ejemplo que tenemos en C++ Builder que está publicado aquí,... la conexión y el intercambio de datos no difiere en nada, esto no por que el compilador sea Pascal, también lo testeamos con un programa Visual C++, y otro en Win32 con Dev-C++ y todo Ok. esto por que los Windows Sockets son un estandar para todos los compiladores para Windows.
El Servidor : TServerSocket
Ahora observa como se tiene que inicializar el ServerSocket, para que comience a escuchar....
- Code: Seleccionar todo
- Procedure TuDlgMain.BtnCreateClick(Sender: TObject);
- Begin
- // Aqui inicializamos el puerto escucha
- SockServer.Port := StrToInt( EdtPort.Text );
- SockServer.Open();
- // SockServer.Active = true;
- // Dejamos sin usar los controles
- Self.EdtPort.Enabled := False;
- Self.BtnCreate.Enabled := False;
- End;
El Cliente : TClientSocket
- Code: Seleccionar todo
- Procedure TuDlgConect.BtnConectClick(Sender: TObject);
- Begin
- // iniciar socket y luego conectar ....
- SockClient.Port := StrToInt( EdtPort.Text );
- SockClient.Host := EdtHost.Text;
- SockClient.Open( );
- // Active = true ---> Connect( ..., ... );
- End;
Cuando ejecutes el programa cliente, el server ya tendra que esta iniciado, y al mostrarle la siguiente ventana, entonces es importantes que sepas la I.P. de la maquina en la que estas y si no lo sabes entonces deja los valores por defecto y click en Conectar.
Notas de Interés
Click en Componenets -> Install Packages -> Add -> Buscar Sockets.bpl y listo.
Si no te funciona .... bueno, enviennos un E-mail a micrologic_software@yahoo.es y les daremos una solución alterna.
Otros Artículos en esta sección
¿Alguna duda?
Sientete libre de hacer tus pruntas en nuestro:
foro deProgramación »
foro deProgramación »