FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Como saber si está conectada la aplicación cliente
Hola a todos.
Vengo con una pregunta que espero me la sepan responder. Tengo dos aplicaciones, un servidor y un cliente, ambas en maquinas diferentes. Las dos aplicaciones se envían datos la una a la otra por medio de una conexión cliente/servidor de la herramienta Indy La pregunta es la siguiente ¿hay alguna forma de saber desde el servidor cuando el cliente está conectado o desde el cliente cuando el servidor está conectado?. Lo que yo estoy haciendo ahora es enviar un comando y detectar la excepción si no hay respuesta del otro lado. El problema de este método es que la aplicación se queda sin responder y parece colgada hasta que determina que no hay respuesta. Si pudiera enviar un ping a un programa determinado podría solucionar el problema ya que un ping determina rápidamente si hay respuesta del otro lado o no. Se me había ocurrido hacer un ping con IdIcmpClient, pero con este solo pude hacer un ping a la PC, no a la aplicación y solo ejecutando la aplicación servidor como administrador Espero me puedan ayudar Saludos MARX |
#2
|
||||
|
||||
¿Estás conectando con sockets?
¿Qué componentes estás utilizando para la conexión? ¿TidTCPClient, TidTCPServer?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
|||
|
|||
Cita:
Efectivamente, estoy utilizando TidTCPClient y TidTCPServer. |
#4
|
||||
|
||||
Revisa los eventos de estos componentes. Poseen unos llamados OnConnected y OnDisconnected.
Deberían servirte para lo que necesitas.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#5
|
|||
|
|||
Cita:
¿o me equivoco? No tengo idea si la herrmienta TIdEcho y TIdECHOServer me puede servir para esto |
#6
|
||||
|
||||
Honestamente no se puede hacer lo que dices. Para notificar desde la una que la otra esta desconectada, pues tienen que tener conexion!
---- Lo que se hace es que se define un "timeout" y un metodo de "ping" que corre dentro de la ventana del timeout. Si el ping falla, se asume que esta desconectado. Algunos componentes tienen esa opcion automatica. La otra, es que debes mejorar el codigo que hace los envios. No deberia "colgar" la app (usas un thread aparte, como debe ser?). SIN EMBARGO La UNICA forma confiable de saber si hay o no conexión es HACIENDO LA CONEXION. UNICA FORMA. Todo lo demas son simples aproximaciones.
__________________
El malabarista. |
#7
|
||||
|
||||
Cita:
Cita:
A no ser que te refieras a saber si las aplicacione están funcionando (no conectadas entre si). porque una vez que se conectan desde ambos extremos tienen los eventos de conexión/desconexión.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
¿ Cómo saber que cliente de correo está instalado por defecto en un PC ? | Aldo | Internet | 5 | 12-06-2013 11:58:15 |
Como saber si una aplicacion esta instalada | ColdFusion | Varios | 7 | 07-04-2009 02:45:51 |
Puedo saber si esta Conectada? (InterBase) | marceloalegre | Conexión con bases de datos | 2 | 17-08-2005 21:35:12 |
Saber si una unidad de Red esta conectada | comba | API de Windows | 2 | 18-04-2005 19:57:02 |
Como Saber Que Aplicacion Se Esta Ejecutando ??? | TomasCampeon | API de Windows | 1 | 12-08-2004 03:23:26 |
|