![]() |
Re: ftp komplettes verzeichniss mit subdirs und files lösche
tag 3 und leider alles ohne erfolg...wer erbarmt sich denn mal... ? ;)
|
Re: ftp komplettes verzeichniss mit subdirs und files lösche
Dann zeig doch endlich mal, was du bisher mit den Indys zustande gebracht hast. Letzendlich musst du nur den rekursiven Code aus deinem ersten Posting für die Indys anpassen.
|
Re: ftp komplettes verzeichniss mit subdirs und files lösche
das ist ja das problem ich habe es nichtmal ansatzweise geschaft den ersten source mit den indys zu kreuzen ..dabei brauche ich ja hilfe..danke dir luckie das du hier nochmal reinschaust
|
Re: ftp komplettes verzeichniss mit subdirs und files lösche
Hallo,
falls du es noch immer nicht hinbekommen haben solltest. Ich brauchte heute auch die Möglichkeit, alle Dateien eines FTP-Verzeichnisses incl. Unterverzeichnisse aufzulisten. Hier hast du die umgeschriebene Prozedur:
Delphi-Quellcode:
Das war nun wirklich nicht schwer. Du musst der Prozedur eine FTP-Instanz übergeben. Was noch wichtig ist, vorher bitte folgendes fest einstellen: FTPCon.UseMLIS := True;
procedure FindAllFilesFTP(FTPCon: TIdFTP; Directory: String; FileList,DirList: TStrings; WithSubDirs, ClearList: Boolean);
procedure ScanDir(const Directory,SubDir: String; WithDir: Boolean); var i: Integer; begin FTPCon.ChangeDir(Directory + SubDir); FTPCon.List; for i := 2 to FTPCon.DirectoryListing.Count-1 do if FTPCon.DirectoryListing.Items[i].ItemType = ditFile then begin if WithDir then FileList.Add(SubDir + FTPCon.DirectoryListing.Items[i].FileName) else FileList.Add(FTPCon.DirectoryListing.Items[i].FileName); end else if FTPCon.DirectoryListing.Items[i].ItemType = ditDirectory then DirList.Add(SubDir + FTPCon.DirectoryListing.Items[i].FileName + '/'); if WithSubDirs then begin for i := 2 to FTPCon.DirectoryListing.Count-1 do if FTPCon.DirectoryListing.Items[i].ItemType = ditDirectory then ScanDir(Directory + SubDir,FTPCon.DirectoryListing.Items[i].FileName + '/',True); end; end; begin if not FTPCon.Connected then Exit; FileList.BeginUpdate; DirList.BeginUpdate; try if ClearList then begin FileList.Clear; DirList.Clear; end; if Directory = '' then Exit; if Directory[Length(Directory)] <> '/' then Directory := Directory + '/'; ScanDir(Directory,'',False); finally DirList.EndUpdate; FileList.EndUpdate; end; end; Und in die uses der Unit "IdAllFTPListParsers" eintragen. WICHTIG: Ist für Indy 10 geschrieben!!! Viel Spaß damit. Grüße ddcool |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz