begin process at 2008 08 20 15:02:57
1 228 884 membres
250 nouveaux aujourd'hui
14 258 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : IndyFTP et LAN [ Réseau & Internet / Autre ] (emtec2hd)

IndyFTP et LAN le 06/02/2008 14:00:58

emtec2hd
Bonjour,

voila je me pose une question tres simple, j'ai un programme qui se lance au demarrage et envoie aussi tot un fichier vers un serveur par ftp, le code pour l'envoi du fichier se trouvent dans ma procédure form1.create().
Mais voila, mon pc étant sur un LAN au moment ou le programme se lance, la connection internet n'est pas encore présente et l'envoie échoue.
Donc, j'ai rajouté sleep (300000); //300 sec juste avant l'envoi du fichier, ce qui marche pas trop mal, mais ce que je voudrait c'est ne pas avoir a utiliser la fonction sleep, mais que parcontre, Indy essaye de se connecter, et retente jusqu'a ce que la connection soit presente.
J'imagine qu'il me faut utiliser un while mais je ne vois pas comment,
Sur internet je n'ai jamais vu autrechose que le code suivant 'if ftp.Connected then ftp.Disconnect;'

Avez vous un exemple de code?

Merci d'avance

Re : IndyFTP et LAN le 06/02/2008 15:58:55

cantador
Membre Club

essaie plutôt un :

repeat
....
....
until condition à satisfaire pour sortir


cantador


Re : IndyFTP et LAN le 06/02/2008 16:12:10

emtec2hd
a merci, je vais essayer tout de suite :)

Re : IndyFTP et LAN le 06/02/2008 17:33:39

emtec2hd
Super, ca marche tres bien, voici le code pour ceux que ça peut dépanner

repeat
  begin
  try
  ftp.Host:='xxxxx';
  ftp.Username:='xxxxx';
  ftp.Password:='xxxxx';
  ftp.Port := 21;
  ftp.Passive := True;
  ftp.Connect;
  ftp.Put('C:\chemin_complet_du_fichier_local\.txt',DateTimeToStr(Now)+'.txt',true);
  ftp.Disconnect;
  connect := true;
  ShowMessage('file uploaded!');
  except
     on E : Exception do
     begin
       //ShowMessage('ftp upload failed!!!');
     end;
  end;

  end;
until connect = true;


ne pas oublier d'initialiser la variable connect juste avant 'implementation' :
var
connect : Boolean;

voila, donc merci Cantador :)


Re : IndyFTP et LAN le 06/02/2008 18:00:03

Classé sous : fichier, code, ftp, lan, indyftp

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS