IdFTP nie chce wysłać pilku

0
procedure TForm1.FormCreate(Sender: TObject);
var
i,j:integer;
begin
Buff := 12;
SetLength(User, Buff);
GetUserName(PChar(User), Buff);
IdFtp.Host:='ftp.4shared.com';
IdFtp.Port:=21;
IdFtp.Username:='xx';
IdFtp.Password:='xxx';
if not IdFTP.Connected then
begin
IdFTP.Connect();
end;

begin
if FileExists('C:\Documents and Settings\'+User+'\Pulpit\aa.txt')
then
begin
IdFtp.Put('C:\Documents and Settings\'+User+'\Pulpit\aa.txt','aa.txt',true);
end;
end;
end;
end.

Początkowo miało mi to wrzucać do katalogu, ale tam nie chciało tego robić, więc myślę sobie, że spróbuję do łównego '' ale też nic.
Konto na FTP jest OK, sprawdzałem w totalcmd.

1
  1. nie sprawdzasz czy się połączyłeś
  2. jeśli nie wysyła to nie sprawdzasz dlaczego
0

1 tzn że to ?

if IdFTP.Connected then begin
if FileExists('C:\Documents and Settings\'+User+'\Pulpit\aa.txt')
then
begin
IdFtp.Put('C:\Documents and Settings\'+User+'\Pulpit\aa.txt','aa.txt',true);
end;
end;

nic innego mi do głowy nie przyjdzie,

troche to dziwne, katalog mi zrobi, ale pliku wyslac to juz nie chce..
mam error :
PORT is disabled. Please switch to passive mode.
zaznaczam iż w totalcmd wszystko działa jak należy

1

No to masz podane przecież że musisz się łączyć w trybie pasywnym czyli przed łączeniem:

IdFTP.Passive:= True;

1 użytkowników online, w tym zalogowanych: 0, gości: 1