![]() |
TidFTPListItems erfahrung?
hat hier mal jemand was mit indy TidFTPServer gemacht?
hab mich mal dran probiert und bin gleich mal gescheitert wo ich dann nun schon 5 stunden rumprobier ^^ beim OnListDirectory muss ich dort dann eine ftplistitems parsen und somit an den client schicken aber ich krieg um gottes willen diese liste nicht vollgestopft mit filename und grösse und solche sachen ich blick net wie ich die "createn" soll oder halt damit umgehen soll habs so probiert:
Delphi-Quellcode:
ich weis.. is bisschen arg schrott drin ^^ aber dann sieht man was ich schon rumprobiert hab :/
procedure TForm1.ftpListDirectory(ASender: TIdFTPServerThread;
const APath: String; ADirectoryListing: TIdFTPListItems); var liste:tstrings; LSize, LTime: string; l, month: Word; size:integer; result1:string; filename: string; modifieddate: tdatetime; itemm : tidftplistitem; collection1: tcollection; coll: tcollectionitemclass; begin memo1.Lines.Add(apath); memo1.Lines.Add(asender.CurrentDir); memo1.Lines.Add(asender.HomeDir); //Collection1 := collection1.Create(coll); //itemm := tidftplistitem.Create(collection1); itemm.UserPermissions := 'r'; itemm.Size := 4224; itemm.DisplayName := 'bla'; itemm.FileName := 'bla1'; { liste := tstringlist.Create; Size := 5664; filename:= 'blabla.bla'; modifieddate := strtodatetime('12.11.03 12:44'); LSize := StringOfChar(' ', 20 - Length(IntToStr(Size))) + IntToStr(Size); Result1 := FormatDateTime('mm-dd-yy hh:mma/p', ModifiedDate) + ' ' + LSize + ' ' + FileName; liste.Add(result1); } //memo1.Lines.Add(inttostr(liste.count)); adirectorylisting.ParseUnknown(itemm); //adirectorylisting.ParseCustom(adirectorylisting.Items[0]); //asender.Connection.WriteLn('dfsdf'); //liste.Free; //adirectorylisting.Items[1].FileName := 'grr'; //adirectorylisting.Items[adirectorylisting.IndexOf(adirectorylisting.Add)].FileName := 'test1'; //adirectorylisting.Items[adirectorylisting.IndexOf(adirectorylisting.Add)].DisplayName := 'test2'; //adirectorylisting.Parse(flfUnix,adirectorylisting.Items[1]); end; hab auch schon in die idftplist.pas reingeschaut aber das is mir ein kleines bisschen zu hoch :) wär schön wenn mir jemand einen anhaltspunkt oder wenigstens irgendwie beispiel code oder sonstiges geben könnte.. sonst verzweifel ich an dem scheiss :( |
Re: TidFTPListItems erfahrung?
Hi Supermuckl.
Du hast dir die ganze Sache ein bisschen zu kompliziert vorgestellt. Das geht eigentlich ganz einfach. Du musst nur pro datei/Verzeichnis ein Objekt vom Typ TIdFTPListItem in ADirectoryListing hinzufügen und dieses dann mit den entsprechenden Daten füllen (Name,Größe,etc.). Du musst da nix mit parse oder so machen.
Delphi-Quellcode:
Ich hoffe geholfen zu haben.
procedure TForm1.serverListDirectory(ASender: TIdFTPServerThread;
const APath: String; ADirectoryListing: TIdFTPListItems); var d : TIdFTPListItem; begin d := ADirectoryListing.Add; d.Size := 0; d.ModifiedDate := now; d.FileName := 'Verz'; d.ItemType := ditDirectory; end; |
Re: TidFTPListItems erfahrung?
Weiß auch jemand in welcher Unit TIdFTPListItems definiert wird???
Ich hab diese Indy Units eingebunden: IdThreadMgr, IdThreadMgrDefault, IdUserAccounts,IdBaseComponent, IdComponent, IdTCPServer, IdFTPServer; aber Delphi meint TIdFTPListItems wäre ein undefinierter Bezeichner! Kann mal jemand bei dems functioniert mit gedrückter Strg Taste auf TIdFTPListItems in Delphi dücken und mir sagen, in welche Unit Delphi dann springt?!?! Danke schon mal! |
Re: TidFTPListItems erfahrung?
OK! Ist in Ordnung!
Habs gefunden! IdFTPList.pas |
Re: TidFTPListItems erfahrung?
ja hat funktioniert :) danke für die help !!!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:53 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