Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   FTP y TThread (https://www.clubdelphi.com/foros/showthread.php?t=74092)

keys 30-05-2011 15:08:52

FTP y TThread
 
Hola a todos. Estoy intentando hacer una aplicación cliente FTP, que suba ficheros a un servidor ftp a traves de un hilo, es decir en el prinicpal hay una lista de ficheros que otro hilo va subiendo ficheros a través de ftp.

El hilo del ftp es un proceso que esta continuamente ejecutandose y cuando encuentra un elemento en la lista lo sube al servidor.

Estoy utilizando los componentes Indy.

Al entrar en la aplicación me conecto a al ftp y todo correcto. Voy subiendo los ficheros según van llegando y todo correcto. El problema esta en que cuando lleva un tiempo sin actividad el componente Ftp se desconecta automáticamente, pero no solo eso que destruye el hilo que va subiendo los ficheros y por lo tanto si llega un fichero nuevo no lo sube.

Alguien sabe por que se puede parar este hilo al desconectarse el ftp. He probado a tener el componente en el form principal y dentro del hilo creandolo en ejecución y me ocurre lo mismo en los dos casos.

No se si me he explicado bien, pero gracias a todos de antemano. Agur

Neftali [Germán.Estévez] 30-05-2011 16:35:31

En las conexiones FTP normales se pueden enviar de forma periódica comando NOP (not operation) de forma periódica para mantener la conexión abierta.

¿Hay alguna posibilidad de hacerlo con los componentes?
¿Lo puedes programar manualmente?

keys 31-05-2011 09:32:24

Lo primero gracias. Ya he detectado el problema, y es que cuando el servidor corta la conexión, el componente TIdftp se desconecta, pero si miras la propiedad Connected, esta marca que esta conectado, y como intentes subir un fichero o intentes hacer algo con el genera una excepción y es lo que hace que el hilo se termine.

Si intento conectar otra vez el componente genera tambien otra excepción. Voy a mirar si tengo alguna forma de que no se cierre la conexión, pero lo que me interesaría es que la conexión se cierre y se vuelva a conectar automáticamente, para así no tener ocupado la conexión mientras no se sube nada.

Si alquien tiene alguna pista se lo agradecería.

Un Saludo y gracias. Agur

keys 31-05-2011 09:38:37

Perdon estoy utilizando delphi xe y los componentes indy 10.5.7 que son los que vienen por defecto.

keys 01-06-2011 08:12:43

Hola a todos. Al final lo que he hecho es que pasado un tiempo sin actividad es el propio programa el que se desconecta del servidor y cuando tiene que volver a subir algo se vuelve a conectar.

Un Saludo a todos.


La franja horaria es GMT +2. Ahora son las 04:59:49.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi