![]() |
Indy FTP Server - Dateiliste aus Stringlist
Kann man dem IndyFTP Server eine eigene Dateiliste zuspielen? Also das der Server dem Client statt einem Ordner Dateien anzeigt, die nicht existieren (nur als Einträge in einer StringList).
In der StringList steht beispielsweise:
Delphi-Quellcode:
Der User kriegt von seinem FTP Client angezeigt:
datei1
datei2
Delphi-Quellcode:
datei1
datei2 Datei1 und Datei2 gibt es nicht wirklich. (Sie sind keine reellen Dateien auf einem Datenträger) Ich bin das ganze schon einmal selbst angegangen. Die Dateiliste müsste doch hier gesendet werden:
Delphi-Quellcode:
Wenn man jetzt TIdFTPListOutput die gewünschten Daten zuschieben könnte, dann müsste das ganze doch funktionieren, oder?
procedure TForm1.FTPServerListDirectory(ASender: TIdFTPServerContext;
const APath: string; ADirectoryListing: TIdFTPListOutput; const ACmd, ASwitches: string); Ich bin dankbar für alle Hilfe die ich bekomme :thumb: |
Re: Indy FTP Server - Dateiliste aus Stringlist
Guten Abend,
die Liste ist das Resultat des ![]() Daran kannst Du so ohne weiteres nichts manipulieren. Du könntest die List höchstens ändern bevor sie auf dem Client angezeigt wird. Dazu mußt Du aber den Quelltext des Client ändern. Wozu das gut sein soll, erschließt sich mir nicht so richtig. Grüße Klaus |
Re: Indy FTP Server - Dateiliste aus Stringlist
Zitat:
Das ganze soll nur clientseitig laufen, ich möchte das der Client per "localhost" auf diese Liste zugreifen kann. Ich wollte überprüfen ob eine Datei abgefragt wird und dann auf eine andere Datei verlinken, dies ist aber scheinbar nicht möglich. (Wäre das denn überhaupt machbar, jetzt einmal abgesehen von dem Einspeisen der Liste. Ginge das vielleicht mit FTPServer.ONGetFile?). Es sollte eine Art "Verschachtelung" für ein anderes Protokoll (oder eine Mischung aus anderen Protokollen) werden, auf die man via FTP zugreifen kann. |
Re: Indy FTP Server - Dateiliste aus Stringlist
Hallo,
Zitat:
Zitat:
Klaus hat bestimmt übersehen, dass du den FTP Server ja selbst implementierst und nicht bei einem existierenden Server anfragst. Freundliche Grüße |
Re: Indy FTP Server - Dateiliste aus Stringlist
FTP ist nur ein Protokoll. Was du dort beim List-Kommando zurück gibst ist einzig und allein dir überlassen. Natürlich müssen die Dateien dabei auch nicht existieren.
Einfach eine Stringlist nehmen geht allerdings auch nicht weil du beim Listing angeben solltest ob es sich um Dateien handelt, wie groß diese Sind welche Attribute sie haben etc. |
Re: Indy FTP Server - Dateiliste aus Stringlist
Zitat:
Bitte übt Geduld mit mir, ich kenne mich halt nicht so gut aus :oops: |
Re: Indy FTP Server - Dateiliste aus Stringlist
Du musst dir kein eigenes Format ausdenken, wenn dir das Standardformat genügt. Bei den Indy-Demos ist ein FTP-Server dabei, den solltest du dir mal anschauen. Du arbeitest eigentlich nur mit der Collection und ihren Items, das passende Format wird ohne dein Zutun vor der Übertragung hergestellt.
|
Re: Indy FTP Server - Dateiliste aus Stringlist
Zitat:
Delphi-Quellcode:
Das erste Problem ist, dass TEST nicht angezeigt wird, was heißt das der Code nicht ausgeführt wird.
procedure TForm1.FTPServerListDirectory(ASender: TIdFTPServerContext;
const APath: string; ADirectoryListing: TIdFTPListOutput; const ACmd, ASwitches: string); var st:TStrings; aq:TIdFTPListOutputItem; begin ShowMessage('TEST'); end; Das zweite Problem ist, dass ADirectoryListing scheinbar eine TCollection oder ein TCollectionItem benötigt um mit Daten befüllt zu werden. Leider weiß ich absolut nicht was ich machen soll. :oops: :gruebel: Wär echt gut wenn mir das jemand erklären könnte. |
Re: Indy FTP Server - Dateiliste aus Stringlist
Weiß niemand eine Antwort? Das kann doch nicht so kompliziert sein.
(sorry fürs gepusche, aber ich hänge hier fest :oops: ) |
Re: Indy FTP Server - Dateiliste aus Stringlist
Moin,
hast du dir die Demo "FTPServer_Console" aus den Indy9Demos mal angeschaut? Wie sieht denn dein nicht funktionierender Code aus? Freundliche Grüße |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:41 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