FTP Browser programmieren

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
reiter
Beiträge: 217
Registriert: Sa 18. Nov 2017, 16:58

FTP Browser programmieren

Beitrag von reiter »

hallo,
ich habe da mal eine Frage zum FTP
ich möchte eine ftp browser programmieren nun stellt sich mir die Frage was kommt für mich in frage was nehme ich als Grundgerüst
eingefallen ist mir dann du könntest ja ne ShellTreeView nehmen und eine ShellListView das funktioniert ja als explorer sehr gut
was soll er können
1) verzeichnisse anzeigen und mit klick oder doppelklick öffnen um an die dateien zu kommen
2) ordner und dateien kopieren
3)dateien ausführen
4) download und upload der dateien und ordner

nun gibts ja mehrere möglichkeiten... ob das mit der ShellTreeView funktioniert weiss ich nicht
Memo weiss ich nicht ob das funktioniert mit punkt 1-4
ne Listbox weiss ich nicht wie das mit den punkten 1-4 geht
download und upload kann man ja über einen button realisieren

nun wollte ich mal fragen mit was kann man sowas realisieren? Listbox oder ListView oder oder oder

danke schon mal für eure hilfe

Mathias
Beiträge: 6164
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: FTP Browser programmieren

Beitrag von Mathias »

Was den FPT-Zugriff anbelangt gibt es hier ein Tutorial: http://wiki.freepascal.org/Synapse#From_an_FTP_server
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

reiter
Beiträge: 217
Registriert: Sa 18. Nov 2017, 16:58

Re: FTP Browser programmieren

Beitrag von reiter »

hallo mathias,
auf der seite war ich als erstes...danke dafür , das hilft mir aber erstmal nicht weiter
wichtig ist ja für mich erstmal worin ich die daten anzeigen lasse
den up und download könnte man ja über einen button realisieren
mir gehts erstmal darum das ich auch die ordner und dateien sehen kann
am besten wäre natürlich ne shelltreeview wo man die datein in 2 fenstern gegenüber hat einmal lokal und einmal ftp
und da fehlt mir der ansatzpunkt

Adromir
Beiträge: 37
Registriert: Sa 28. Apr 2018, 04:09

Re: FTP Browser programmieren

Beitrag von Adromir »

Also für die lokale Seite geht das ganz fix: http://lazplanet.blogspot.com/2013/06/c ... nutes.html

Für den Remoteteil ist es etwas komplizierter, da du ja nur eine Textausgabe zurück bekommst.. Aber die könntest du parsen und dann damit einen Treeview befüllen.

reiter
Beiträge: 217
Registriert: Sa 18. Nov 2017, 16:58

Re: FTP Browser programmieren

Beitrag von reiter »

Guten Morgen, ja der lokale Teil ist easy habe ich auch schon mal gemacht
Das funktioniert auch... Nur mit dem FTP tue ich mich schwer und frage mich ob das für mich der richtige ansatzpunkt ist
Oder ob das in einem einfachen Fenster besser ist... Aber so wie du schreibst komme ich um das parsen nicht drum rum egal was man da nimmt? Listbox oder ähnliches
Habe nichts in der Richtung gefunden beim lesen.. Hab den ganzen Tag gesucht gestern, was ich gefunden habe sind alles blos FTP Clients die ihre Dateien einfach nur runterladen und nicht in einen Browser
Hab auch nirgends ein Beispiel gefunden für mich
Hier gibt's ja auch gute Beiträge dazu aber auch nur in eine memolist oder als schowMessage

Adromir
Beiträge: 37
Registriert: Sa 28. Apr 2018, 04:09

Re: FTP Browser programmieren

Beitrag von Adromir »

Also so würde ich es machench hab gerade was ähnliches vor, aber es kann auch sein, daß ich da zu kompliziert denke..

reiter
Beiträge: 217
Registriert: Sa 18. Nov 2017, 16:58

Re: FTP Browser programmieren

Beitrag von reiter »

vielleicht könnte mir jemand mit einem beispiel helfen...würde ich mich sehr drüber freuen.. mit ner listbox oder treeview
soweit bin ich weiss aber nicht wie ich die listbox oder treeview einbinde

procedure TForm1.FTPconnect;

var
I:integer;

begin
aFTP := TFTPSend.Create;
aFTP.TargetHost := 'ComboBox1.Text';
aFTP.TargetPort := '21';
aFTP.UserName := 'Edit3.Text';
aFTP.Password := 'Edit4.Text';

if not aFTP.Login then
begin
aFTP.Free;
MessageDlg('Fehler', ('Konnte keine Verbindung zu '+ComboBox1.Text+' aufbauen.'), mtError, [mbOk], 0);
Exit;
end
else Memo1.Lines.Add('Verbindung zu '+ComboBox1.Text+' hergestellt...');
aFTP.ChangeWorkingDir('/');
aFTP.Free;
end;

Adromir
Beiträge: 37
Registriert: Sa 28. Apr 2018, 04:09

Re: FTP Browser programmieren

Beitrag von Adromir »

Unter http://wiki.freepascal.org/Synapse#From_an_FTP_server findest du dieses Beispiel um ein Verzeichnis ausliest:

Code: Alles auswählen

//Use ftpsend unit
 
function FtpGetDir(const IP, Port, Path, User, Pass: string; DirList: TStringList): Boolean;
var
  i: Integer;
  s: string;
begin
  Result := False;
  with TFTPSend.Create do
  try
    Username := User;
    Password := Pass;
    TargetHost := IP;
    TargetPort := Port;
    if not Login then
      Exit;
    Result := List(Path, False);
    for i := 0 to FtpList.Count -1 do
    begin
      s := FTPList[i].FileName;
      DirList.Add(s);
    end;
    Logout;
  finally
    Free;
  end;
end;


Du erstellst eine Leere TreeView und befüllst diese mit der Ausgabe der Funktion. Wahrscheinlich brauch es da noch ein Feintuning um Verzeichnisse anzuzeigen, bzw. diese dann später voneinander unterschiden zu können.

reiter
Beiträge: 217
Registriert: Sa 18. Nov 2017, 16:58

Re: FTP Browser programmieren

Beitrag von reiter »

ja das hatte ich bei synapse auch schon gesehen...
stand auch im wiki

Benutzeravatar
theo
Beiträge: 10468
Registriert: Mo 11. Sep 2006, 19:01

Re: FTP Browser programmieren

Beitrag von theo »

@reiter: Wozu willst du das denn machen?
FTP "Explorer" gibt es ja genug.
Wenn du das aus Spaß machen willst, dann mach es doch einfach.
Gibt aber ordentlich zu tun, wenn du es gut machen willst.
Das Forum wird die Arbeit aber kaum für dich übernehmen.

reiter
Beiträge: 217
Registriert: Sa 18. Nov 2017, 16:58

Re: FTP Browser programmieren

Beitrag von reiter »

Hallo Theo .. Ja sicher gibt's Explorer wie Sand am Meer, dieser soll aber in ein Programm integriert werden
Und das mir das Forum das nicht macht ist mir klar, aber vielleicht ne kleine Hilfestellung wäre nicht schlecht

Adromir
Beiträge: 37
Registriert: Sa 28. Apr 2018, 04:09

Re: FTP Browser programmieren

Beitrag von Adromir »

Wo hakt es denn genau? EinenTreeView zu befüllen ist im Wiki doch ganz gut beschrieben

Antworten