FTP-Zugang per LNET/Synapse

Alle Fragen zur Netzwerkkommunikation
Antworten
Milchgesicht
Beiträge: 10
Registriert: Do 8. Jan 2015, 16:37

FTP-Zugang per LNET/Synapse

Beitrag von Milchgesicht »

Hallo,

ich bin auf der Suche nach einer FTP-Verbindung, um einen Datenordner auf einem FTP-Server (lokal) zu ersetzen.
Bei meiner Recherche bin ich auf LNET und auf Synapse gestoßen.
Leider habe ich Schwierigkeiten die beiden Komponenten anzusprechen,
was mit Sicherheit an mangelndem Grundwissen liegt, was ich mir durch Hilfe erhoffe zu verbessern.
Zu LNET finde ich leider keinerlei Dokumentation, zumindest nicht für den FTP Teil.
Habe ein paar Infos zum TCP-Teil gefunden, aber ich möchte ja auf einen FTP-Server zugreifen.
Ich habe LNET in Lazarus eingebunden und Lazarus neu kompiliert.
Die Funktionen stehen mir nun auch unter lNet zu Verfügung, leider weiss ich damit
nichts anzufangen. Was mir fehlt ist ein Hinweis zum starten.
Vll. eine Beispielfunktion oder ein einfacher Tip.
Oder ist es doch sinvoller das Ganze mit Synapse zu machen?
Hier habe ich zwar eine Funktionsreferenz aber keinen blassen Schimmer wie ich die befehle anspreche.
Habe die Synapse Daten unter unter lazarus\fpc\2.6.0\units\i386-win32 entpackt und
unter Interface uses die Units blcksock, synautil, synaip, synsock hinzugefügt.
Wenn ich nun aber z.B. FTPClient:=TFTPSend.Create aufrufe bekomme ich die Standardmeldung Identifier not found...
Ich weiss aber auch nicht ob und wie ich das nun noch definieren muss...

Ich bitte um Hilfe wenn möglich, vielen Dank!

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

Re: FTP-Zugang per LNET/Synapse

Beitrag von theo »

Milchgesicht hat geschrieben:Wenn ich nun aber z.B. FTPClient:=TFTPSend.Create aufrufe bekomme ich die Standardmeldung Identifier not found...
Ich weiss aber auch nicht ob und wie ich das nun noch definieren muss...


Wieso nimmst du blcksock, synautil, synaip, synsock in die "uses" auf, aber nicht die für FTP zuständige Unit "ftpsend"?

http://synapse.ararat.cz/doc/help/ftpsend.html

Milchgesicht
Beiträge: 10
Registriert: Do 8. Jan 2015, 16:37

Re: FTP-Zugang per LNET/Synapse

Beitrag von Milchgesicht »

Na weil ich es nicht besser wusste.
Vielen Dank, so werde ich es erst einmal weiter probieren.
Gibt es eine Empfehlung ob LNET oder Synapse?

wbeppler
Beiträge: 131
Registriert: So 20. Jul 2014, 10:27
OS, Lazarus, FPC: kubuntu, raspbian, laz 1.2 / 0.9 microcontroller
CPU-Target: 8-64 bit
Wohnort: bodensee
Kontaktdaten:

Re: FTP-Zugang per LNET/Synapse

Beitrag von wbeppler »

ich machs mit synapse, lnet hab ich noch nie gemacht

mit synapse follgendes:

synapse runterladen , auspacken und die units bei pojekt->einstellungen->compilereinstellungen->pfad auch noch hinzufuegen

danach in uses angeben
FtpSend
und dann z.b.

Code: Alles auswählen

procedure TForm1.B_lese_vom_ftp_serverClick(Sender: TObject);
var
   I:     integer;
   SServerantwort:     string;
   aFTP: TFTPSend;
 
begin
     aFTP := TFTPSend.Create;
     aFTP.TargetHost := 'deinhost.de';
     aFTP.TargetPort := '21';
     aFTP.UserName := 'username';
     aFTP.Password := 'nawaswohl';
     SServerantwort := 'Dateien auf dem Server:'+chr(13)+chr(13);
 
     if aFTP.Login then begin
        aFTP.ChangeToRootDir;
        aFTP.List('',False);
        for I:=0 to aFTP.FtpList.Count-1 do begin
            if aftp.FtpList.Items[I].Directory = true then begin
               SServerantwort := SServerantwort +'Dir: '+aFTP.FtpList.Items[I].FileName +chr(13);
            end else begin
                SServerantwort := SServerantwort + 'File: '+aFTP.FtpList.Items[I].FileName +chr(13);
            end;
        end;
        aFTP.Logout;
     end;
     ShowMessage(SServerantwort);
end;


vieleicht hilft dir das weiter

gruss

w :-)
Zuletzt geändert von Lori am Fr 9. Jan 2015, 16:25, insgesamt 2-mal geändert.
Grund: Highlighter

Milchgesicht
Beiträge: 10
Registriert: Do 8. Jan 2015, 16:37

Re: FTP-Zugang per LNET/Synapse

Beitrag von Milchgesicht »

Super. Das ist doch mal ne anständige Antwort! Vielen Dank!
Was mach ich eigentlich, wenn kein Passwort vergeben ist für den FTP-Server?

wbeppler
Beiträge: 131
Registriert: So 20. Jul 2014, 10:27
OS, Lazarus, FPC: kubuntu, raspbian, laz 1.2 / 0.9 microcontroller
CPU-Target: 8-64 bit
Wohnort: bodensee
Kontaktdaten:

Re: FTP-Zugang per LNET/Synapse

Beitrag von wbeppler »

dann nimmst den user anonymous, thats history

Milchgesicht
Beiträge: 10
Registriert: Do 8. Jan 2015, 16:37

Re: FTP-Zugang per LNET/Synapse

Beitrag von Milchgesicht »

Ok, also die Verbindung zum FTP-Server funktioniert und ich kann auch Verzeichnisse und Dateien anlegen aber entweder stehe ich gerade mal wieder auf dem Schlauch oder es gibt in der Klasse TFTPSend keine Funktion um eine Datei auf einen FTP-Server zu kopieren oder sehe ich das falsch?

EDIT: StoreFile hab ich versucht, da wird aber nur eine neue Datei angelegt, nicht kopiert.

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

Re: FTP-Zugang per LNET/Synapse

Beitrag von theo »

Schau dir den Quellcode von ftpsend.FtpPutFile an.

Milchgesicht
Beiträge: 10
Registriert: Do 8. Jan 2015, 16:37

Re: FTP-Zugang per LNET/Synapse

Beitrag von Milchgesicht »

Die Funktion FtpPutFile lässt sich nicht identifizieren, fehlt mir hier etwa noch eine andere Klasse?
In TFTPSend scheint sie nicht integriert zu sein.

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: FTP-Zugang per LNET/Synapse

Beitrag von Komoluna »

Das is ne Methode in der Unit FTPSend. nicht in der Klasse

MFG

Komoluna
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Milchgesicht
Beiträge: 10
Registriert: Do 8. Jan 2015, 16:37

Re: FTP-Zugang per LNET/Synapse

Beitrag von Milchgesicht »

Perfekt. Danke!

Antworten