Как удалить директорию на FTP полностью со всеми вложениями и файлами.
на ftp такая вот структура каталогов для удаления:
/111/1
/111/2/2/1
/111/3
/111/1.txt
/111/2.txt
/111/3.txtНужно удалить каталог 111 полностью, использую Indy 10, делаю так:
procedure TMainForm.DeleteDirectory(Dir: String);
var
i: integer;
FileName: string;
AFTPItem: TIdFTPListItem;
begin
IdFTP1.ChangeDir(Dir);
IdFTP1.List;
for i := 0 to IdFTP1.DirectoryListing.Count - 1 do
begin
AFTPItem := IdFTP1.DirectoryListing.Items[i];
FileName := AFTPItem.FileName;
if AFTPItem.ItemType = ditDirectory then
begin
if (FileName <> '.') and (FileName <> '..') then
begin
DeleteDirectory(FileName);
end;
end
else
begin
IdFTP1.Delete(FileName);
end;
end;
IdFTP1.ChangeDirUp;
IdFTP1.RemoveDir(Dir);
end;
...
DeleteDirectory(string(ListView1.Selected.Caption));
...
и удаляется толька папка 1 и вылетает.