AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi FTP-Session schliesst nicht
Thema durchsuchen
Ansicht
Themen-Optionen

FTP-Session schliesst nicht

Ein Thema von freq.9 · begonnen am 24. Okt 2005 · letzter Beitrag vom 25. Okt 2005
Antwort Antwort
Benutzerbild von freq.9
freq.9

Registriert seit: 12. Nov 2003
Ort: Beckum
37 Beiträge
 
Delphi 7 Professional
 
#1

FTP-Session schliesst nicht

  Alt 24. Okt 2005, 22:16
Ich versuche über TTcpClient eine FTP-Verbindung herzustellen und das macht auch keine Probleme, aber das Verbindung kappen macht mir sorgen. Derzeit sehen meine Commands wie folgt aus:

Code:
USER freq9
PASS test
CWD downloads/
QUIT
Aber wenn ich dann auf meinem Linux-Rechner nachschaue ist die Session weiterhin aktiv. Im Code sieht es wie folgt aus:

Delphi-Quellcode:
.
      try
        with TcpClient do
        begin
          RemoteHost := '192.168.1.13';
          RemotePort := '21';
          Active := True;
          Sendln('USER freq9');
          Sendln('PASS test');
          Sendln('CWD downloads/');
          Sendln('QUIT');
          Disconnect;
          Active := False;
          Close;
        end;
      finally
        TcpClient.Free
      end;
Diese recht komische Folge kan nun zustande, weil die Session einfach nicht gekillt wird:

Delphi-Quellcode:
.
          Sendln('QUIT');
          Disconnect;
          Active := False;
          Close;
Auf meinem Linux-Server wo ich einen FTP-Server am laufen habe (mit anderen FTP-Clients getestet) habe ich dann in den Prozessen folgenden Eintrag:

Code:
freq9      357  0.0  0.4   6388  2404 pts/2    S+   01:08   0:00 proftpd: freq9 - zeev: IDLE
Jan Pieper
  Mit Zitat antworten Zitat
ripper8472

Registriert seit: 17. Aug 2003
275 Beiträge
 
#2

Re: FTP-Session schliesst nicht

  Alt 24. Okt 2005, 22:41
vielleicht solltest du zwischen den kommandos die daten annehmen, die der server dir schickt...
Christoph
  Mit Zitat antworten Zitat
Benutzerbild von freq.9
freq.9

Registriert seit: 12. Nov 2003
Ort: Beckum
37 Beiträge
 
Delphi 7 Professional
 
#3

Re: FTP-Session schliesst nicht

  Alt 25. Okt 2005, 13:16
Zitat von ripper8472:
vielleicht solltest du zwischen den kommandos die daten annehmen, die der server dir schickt...
In wiefern? Ich kenne das FTP-Protokoll leider nicht so unbedingt. Ich habe auch mal bei onReceive mir Buf in ein Memo schreiben lassen, aber da kam nichts.
Jan Pieper
  Mit Zitat antworten Zitat
Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: FTP-Session schliesst nicht

  Alt 25. Okt 2005, 15:37
Siehe RFC 959.

Außerdem basiert FTP auf dem Telnet Protokoll (RFC 854), dass du als unterste Schicht erst einmal umsetzen solltest (Stichwort DO/DONT/WILL/WONT).

Wenn dir das alles nichts sagt, dann nimm lieber eine fertige FTP- oder wenigstens Telnet-Komponente.
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat
ripper8472

Registriert seit: 17. Aug 2003
275 Beiträge
 
#5

Re: FTP-Session schliesst nicht

  Alt 25. Okt 2005, 18:06
sniffe einfach mal eine ftp session. dann siehst du, was genau abgeht.
du musst nicht wirklich ein telnetprotokoll benutzen. einfach commands senden und empfangen reicht schon. du musst nur auf die zeilenpufferung achten.
Christoph
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz