![]() |
IdFTP Dateien auflisten mit Zusatzinfos?
Moin.
Kleines Problem, gestaltet sich ungefähr so: ich wollte eine kleinigkeit für n paar Kumpels schreiben. Die wollen Textentwürfe über einen Server austauschen. Also hab ich mir gedacht, ich bau n kleines Tool, dass dann immer bei Aufruf zum Server verbindet und von da dann einfach alle Dateien auflistet (in ein Liestview). Ich hab mal irgendwo rausgesucht, dass man das mit IdFTP1.List(Listeview1.Items) oder so ähnlich machen kann. Allerdings möchte ich ja die Dateigröße, denjenigen, der die Datei hochgeladen hat und das Uploaddatum. Wie jedoch bekomme ich die Dateien so als Stringlist oder wie auch immer, dass ich die zufügen kann und dann noch Subitems.Add benutzen. Und nun die 1.000.000€-Frage: Wie krieg ich das hin? Danke für eure hilfe. |
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Hast du dir schon mal die Demos von den Indys angeguckt?
|
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Jop aber da ist so viel mit Direcotry und so.
Ich möchte die Dateien ja nur auflisten. Nicht die Ordner... |
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Alles bekommst du mit
Delphi-Quellcode:
FFtp.List (nil, '-a', True);
![]() Dateien und Ordner jkannst du dann ja nachher ausfiltern |
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Zitat:
|
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Zitat:
|
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Nein. Ich wollte damit nur ausdrücken, dass man sich mit manchen Dingen eben mal etwas intensiver beschäftigen muss. Letztendlich brauchst du doch nur den Code herausnehmen, der die Ordner mit auflistet.
|
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Zitat:
|
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Zitat:
Also den Code so ändern:
Delphi-Quellcode:
procedure TFtpBrowser.CreateDirectoryListing;
var i: Integer; begin FFtp.SendCmd('TYPE A'); FFtp.List (nil, '-a', True); for i := 0 to Pred (FFtp.ListResult.Count) do CreateItemFromFileInfo (FTP.DirectoryListing[i]); end; procedure TFtpBrowser.CreateItemFromFileInfo(const FileInfo: TIdFTPListItem); var ListItem: TListItem; begin // Mach was mit FileInfo end; Trotzdem hier noch der Code (bitte nicht schlagen^^)
Delphi-Quellcode:
type
TFileInfo = record Directory: Boolean; Filename, Date, FileType: String; Size: Integer; end; ------------------- function TFtpBrowser.GetFileInfo(Index: Integer): TFileInfo; var Registry: TRegistry; Filename, Filedetails, TempType, TempSize: String; begin Filename := FFtp.DirectoryListing[Index].FileName; Filedetails := FFtp.DirectoryListing[Index].Text; Result.Directory := Filedetails[1] = 'd'; Result.Filename := Filename; if Result.Directory then Result.FileType := 'Ordner' else begin Result.FileType := ReverseString (copy (ReverseString (Filename), 1, pos ('.', ReverseString (Filename)))); Registry := TRegistry.Create(KEY_READ); try Registry.RootKey := HKEY_CLASSES_ROOT; if Registry.OpenKey (Result.FileType, False) then begin TempType := Registry.ReadString(''); Registry.CloseKey; if Registry.OpenKey (TempType, False) then begin TempType := Registry.ReadString(''); end; end; finally Registry.Free; end; if (TempType = '') then Result.FileType := Trim (AnsiUpperCase (copy (Result.FileType, 2, length (Result.FileType) - 1)) + ' Datei') else Result.FileType := TempType; end; Filedetails := ReverseString(Filedetails); Delete (Filedetails, 1, length (Filename)); Result.Date := ReverseString (Trim (copy (Filedetails, 1, 14))); try TempSize := Trim (copy (Filedetails, 14, 10)) + ' '; TempSize := Trim (copy (TempSize, 1, pos (' ', TempSize))); Result.Size := StrToInt (ReverseString (TempSize)); except Result.Size := 0; end; end; |
AW: IdFTP Dateien auflisten mit Zusatzinfos?
Delphi-Quellcode:
Hm. Ich bekomm da wieder einen Error. Warum??
Procedure CreateEntry(const FileInfo: TIdFTPListItem); //TIdFTPListItem wird markiert als undeklarierter
begin //Bezeichner.... end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:57 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