Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   Saber si hay conexión con un servidor Ftp.... (https://www.clubdelphi.com/foros/showthread.php?t=72715)

verito_83mdq 08-03-2011 15:31:37

Saber si hay conexión con un servidor Ftp....
 
Saludoss a Todoss!! Como andan??

Como puse en el titulo mi pregunta es si hay alguna manera de saber si la pc la cual tiene un servidor ftp esta activa.

La aplicación en la que estoy trabajndo cuando inicia se conecta al ftp de mi pc y si hay una actualización la baja. Lo que se me ocurrió ahora es agregarle otra dirección ftp entonces si mi pc esta apagada se conecta al otro ftp.

Yo hice algo asi:
Código Delphi [-]

               ActualizarIdFTP.Username:='mi_ftp1';
               ActualizarIdFTP.Password:= 'mi_ftp';
               ActualizarIdFTP.Host := 'mi_ftp';
               ActualizarIdFTP.Connect;
                 if ActualizarIdFTP.Connected = True then
                     begin
                        ActualizarIdFTP.ChangeDir('/Mi_Programa');
                        ActualizarIdFTP.Get('updates.txt','C:\WINDOWS\updates.txt',True,False);
                     end


                 else

                     begin
                       ActualizarIdFTP.Disconnect;
                       ActualizarIdFTP.Username:='otro_ftp';
                       ActualizarIdFTP.Password:= 'otro_ftp';
                       ActualizarIdFTP.Host := 'otro_ftp';
                       ActualizarIdFTP.Connect;

El problema de esto es que si mi pc esta apagada despues de un rato me pone "Conection time out", osea no pasa al
Código Delphi [-]
if ActualizarIdFTP.Connected = True then

Alguna sugerencia????

Desde ya muchas gracias!!!!

verito_83mdq 09-03-2011 02:17:29

Nadie me puede ayudar?? :( Me explique mal?

verito_83mdq 09-03-2011 19:29:54

:(:(:(:(:(:(:(:(:(:(

Chris 09-03-2011 19:32:16

Tienes que poner la línea ActualizarIdFTP.Connect; dentro de un try ... finally para que cuando se genera la excepción la aplicación no se salte la ejecución del resto del código del procedimiento.

Saludos,
Chris

verito_83mdq 09-03-2011 20:14:57

Gracias Chriss!! Lo acabo de probar y funciona!;)

Se podrá reducir el tiempo que tarda al tratar de conectar? Se queda un rato hasta que continua con el otro ftp. Probé con ActualizarIdFTP.ConnectTimeout:=3; pero no cambio en nada, le estoy errando de propiedad me parece.

Saludos!!!!

Chris 09-03-2011 20:32:42

Intuitivamente esa debería ser la propiedad que te ayude o configure lo que buscar. Pero no soy experto en estos componentes así que no te podría dar una respuesta acertada.


La franja horaria es GMT +2. Ahora son las 13:19:03.

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