-
Добрый день.
Нужно было передавать файлы на FTP (до этого с FTP не работал)
Код:
if IdFTP1.Connected then
begin
IdFTP1.Abort;
IdFTP1.Quit;
end;
IdFTP1.Username := Login_S;
IdFTP1.Password := Password_S;
IdFTP1.Host := IP_S;
try
IdFTP1.Connect;
if IdFTP1.Connected then
begin
s:=URLEncode(ExtractFileName(FName));
IdFTP1.Put(FName,s,false); // здесь останавливается секунд на 30, потом ошибка EIdSocktError 10054
IdFTP1.Quit;
end;
except
......
......
end;
файл на FTP появляется, но нулевой длины.
Подскажите, куда копать.
Спасибо. -
FreeAndNil © (20.12.18 23:44) [1]копать нужно в сторону того, что в протоколе используются два отдельных соединения.
одно для команд (tcp/21), второе для данных (tcp/порт динамический)
первое устанавливается всегда клиентом, второе может устанавливаться как с клиента так и с сервера.
у тебя оно не устанавливается. -
Styx © (21.12.18 00:27) [2]Копать в сторону Passive mode