![]() |
enviar mensaje entre aplicaciones delphi distinto PC
Buenas a todos,
Mi deseo es enviar un mensaje desde una aplicación a otra (unidireccional, no bidireccional) en Delphi. Estoy probando en envío con TIndyTCPCliente y TTCPIndyServer (Los UDP's a veces se salta algún mensaje, los TCP's son más fiables) ¿Existen otros componentes con los que enviar un mensaje unidireccional (tan sólo ne un sentido) de una aplicación a otra en distinto PC pero de la misma red local.? Gracias y Saludos, Javier |
Hola rabata2001.
Tenes otra opción en este enlace: Exchanging Data over the Network using Delphi Saludos :) |
rabata2001,
Cita:
Cita:
Espero sea útil :) Nelson. |
Buenas,
Me interesaría algo que funcione correctamente para win32 y win64. Simplemente voy a enviar un mensaje desde un sitio a otro y continuadamente (por lo tanto no deseo cerrar la conexión), desearía un porcentaje alto de que ha llegado el dato (udp no tiene porque llegar) y los tcp se quedan congelado el servidor si tiene algún cliente conectado ¿Cómo podría cerrar las conexiones desde mi indytcpserver sin que se congele aunque tenga un cliente conectado (el servidor cierra a sus clientes y su conexion)?. 1 se conecta el servidor / cliente 2. el cliente envía datos al servidor 3. el cliente o el servidor se cierran y no se congelan Gracias y Saludos. |
UDP es rápido y no requiere conexión previa. Asegurar la llagada del paquete es responsabilidad del programador, basta con enviar una confirmación de recibido. TCP es más seguro porque lo automatiza el protocolo. La congelación de ambos protocolos lo resuelves con threads. Si quieres un buen control, vete a bajo nivel con sockets.
Saludos. |
Si tiro por el camino de UDP, prácticamente es controlar la gestión del flujo:
1. enviar desde cliente a servidor 2. recibe el servidor y enviar ack al cliente 3. si el cliente no recibe ningún ack, vuelve a enviar (numero de reintentos) Me sigue gustando más la idea de TCP. ¿Podrías citarme algún ejemplo para usarlo y evitar la congelación cuando intente desconectar el servidor con algún cliente enganchado?. Gracias y saludos. |
Yo hice una aplicación que lo que hace es, mediante un timer, revisar en una base de datos si el usuario de ese equipo tiene pendiente de leer algún mensaje dirigido a él. Al principio lo hice por IP pero para que te mostrara tus mensajes en cualquier equipo lo cambie por el nombre de usuario que iniciaba sesión en windows. El programa también admite programar cuando quieres que una persona vea el mensaje con fecha y hora.
Te lo digo por darte otra idea. Saludos. |
Muchas gracias por tu aportación. ya la había sopesado, de hecho alguna cosas en mi sistema las paso así, pero me gustaría tener un poco de mejor rendimiento que sea algo directo, la bbdd es muy usada y me gustaría evitarlo.
Saludos. |
Cita:
Te pongo un fragmento en C a bajo nivel con sockets Código:
//creamos el Sock y conectamos al servidorSaludos. |
rabata2001,
Cita:
Espero sea útil :) Nelson. |
| La franja horaria es GMT +2. Ahora son las 11:28:58. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi