FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#1
|
||||
|
||||
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 |
#2
|
||||
|
||||
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?
__________________
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
|
||||
|
||||
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 |
#4
|
||||
|
||||
Perdon estoy utilizando delphi xe y los componentes indy 10.5.7 que son los que vienen por defecto.
|
#5
|
||||
|
||||
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. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TThread y componentes de red | noob | OOP | 0 | 18-04-2009 02:25:07 |
Tthread Vs. Application -> ProcessMessages(); | Peterman | Varios | 8 | 31-05-2007 04:05:03 |
TThread y cerrar una ventana previamente abierta | gluglu | OOP | 1 | 14-05-2007 20:19:54 |
Como Liberar un Tthread???? | AGAG4 | Varios | 3 | 25-04-2005 23:16:40 |
Lio con TThread | diegofhernando | Varios | 0 | 20-01-2004 18:58:35 |
|