procedure ListDir(dir:
String;
const tv: TTreeView; tn: TTreeNode);
var
itm: TIdFTPListItems;
i: Integer;
node: TTreeNode;
tmp:
string;
begin
Form1.ftp.ChangeDir(dir);
Form1.ftp.List;
itm := Form1.ftp.DirectoryListing;
for i := 0
to itm.count-1
do begin
//showmessage(InttoStr(itm.count-1)); // Showmessage
if itm.Items[i].ItemType = ditDirectory
then begin
if itm.Items[i].Filename <> '
.'
then begin
node := tv.Items.AddChild(tn, itm.Items[i].Filename);
//showmessage(itm.Items[i].Filename + ' / L: ' + IntToStr(Length(itm.Items[i].Filename))); // Showmessage
listdir(itm.items[i].filename, tv, node);
Form1.ftp.ChangeDirUp;
Form1.ftp.list;
itm := Form1.ftp.DirectoryListing;
end;
end
else
form1.treeview1.Items.addChild(tn, itm.Items[i].filename+'
['+inttostr(itm.items[i].size)+'
]');
end;
end;
procedure TForm1.PngSpeedButton1Click(Sender: TObject);
begin
FTP.Host :=
FTP.Text;
FTP.Port := StrToInt(FTPport.Text);
FTP.Username := FTPlogin.Text;
FTP.Password := FTPpw.Text;
FTP.Connect;
ListDir('
/public_html/install2/', Treeview1,
nil);
FTP.Disconnect;
end;