Bonjour,
c'est la première fois que je rencontre ce problème et ne sais de quoi il retourne
Voici ma routine d'envoi, la connexion se passe bien par contre le put ne se fait pasc'est pourtant un petit fichier de quelques ko
1- Est-ce que je peux tracer un peu plus le problème ? Je pense que oui même si je ne m'y suis pas encore penché.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 procedure TDatas.ftpSend(Boutique, Source, destination: String); var idftp : TIdFtp; begin with TFDQuery.Create(Self) do begin Connection:=ConnexionBase; SQL.Text:='SELECT FTP_ADDRESS, FTP_USER, FTP_PASS FROM MAGASINS_PRESTASHOP WHERE ADDRESS CONTAINING :P'; ParamByName('P').AsString:=Boutique; Open; IdFTP := TIdFTP.create(nil); try IdFTP.Host :=DeCryptString(FieldByName('FTP_ADDRESS').asString,GUIDPresta+InfosAuteur[0]); idftp.Port:=21; IdFTP.Username :=DeCryptString(FieldByName('FTP_USER').asString,GUIDPresta+InfosAuteur[0]); IdFTP.Password := DeCryptString(FieldByName('FTP_PASS').asString,GUIDPresta+InfosAuteur[0]); IdFTP.Connect; // OK if verbose AND idftp.Connected then Writeln('Connecté , envoi de '+Source+' vers '+destination); // OK IdFTP.put(Source,Destination); // timeout finally idftp.Disconnect; IdFTP.Free; end; Close; end; end;
2- Serait-ce un problème de fichier source non fermé (il est généré par un fdbatchmove) ?[Edit]un test sur un fichier déjà créé me retourne la même erreur
L'ajout de idftp.NATKeepAlive.UseKeepAlive:=True; ne change rien
3- autres pistes ?
Partager