![]() |
idFTP Server
Bei dieser Procedure kann ich das Verzeichnis mit DirectoryOpus lesen
Code:
Bei dieser Procedure kann nur der InternetExplorer die Verzeichnise lesen
procedure TForm1.FTPServerListDirectory(ASender: TIdFTPServerThread;
const APath: String; ADirectoryListing: TIdFTPListItems); var LItem: TidFTPListItem; tmp1: TSearchRec; LFileAttribute: Integer; LPfad: String; begin LPfad := 'D:\'; LFileAttribute := FILE_ATTRIBUTE_DIRECTORY + FILE_ATTRIBUTE_HIDDEN + FILE_ATTRIBUTE_SYSTEM; if FindFirst(LPfad + '*', LFileAttribute, tmp1) = 0 then begin repeat if (tmp1.Name <> '.') and (tmp1.Name <> '..') then begin LItem := ADirectoryListing.Add; LItem.FileName := tmp1.Name; LItem.Size := tmp1.Size; LItem.OwnerName := 'Username'; LItem.GroupName := 'Groupname'; LItem.OwnerPermissions := 'rwx'; LItem.GroupPermissions := 'rwx'; LItem.UserPermissions := 'rwx'; if DirectoryExists(LPfad + tmp1.Name) then LItem.ItemType := ditDirectory else LItem.ItemType := idftplist.ditFile; end; until FindNext(tmp1) <> 0; end; FindClose(tmp1); end;
Code:
Was muss bei der 2ten Procedur geändert werden damit es die Wirkung von der Ersten hat?
procedure AddlistItem( aDirectoryListing: TIdFTPListItems; Filename: string; ItemType: TIdDirItemType; size: int64; date: tdatetime ) ;
var listitem: TIdFTPListItem; begin listitem := aDirectoryListing.Add; listitem.ItemType := ItemType; listitem.FileName := Filename; listitem.OwnerName := 'anonymous'; listitem.GroupName := 'all'; listitem.OwnerPermissions := '---'; listitem.GroupPermissions := '---'; listitem.UserPermissions := '---'; listitem.Size := size; listitem.ModifiedDate := date; end; procedure TForm1.FTPServerListDirectory(ASender: TIdFTPServerThread; const APath: String; ADirectoryListing: TIdFTPListItems); var f: tsearchrec; a: integer; begin ADirectoryListing.DirectoryName := apath; a := FindFirst( TransLatePath( apath, ASender.HomeDir ) + '*.*', faAnyFile, f ) ; while ( a = 0 ) do begin if ( f.Attr and faDirectory > 0 ) then AddlistItem( ADirectoryListing, f.Name, ditDirectory, f.size, FileDateToDateTime( f.Time ) ) else AddlistItem( ADirectoryListing, f.Name, ditFile, f.size, FileDateToDateTime( f.Time ) ) ; a := FindNext( f ) ; end; FindClose( f ) ; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 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