AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi FTP über Proxy (Fehler bei Connect > GetResponse)
Thema durchsuchen
Ansicht
Themen-Optionen

FTP über Proxy (Fehler bei Connect > GetResponse)

Ein Thema von mck · begonnen am 21. Mai 2005 · letzter Beitrag vom 15. Mai 2009
Antwort Antwort
Seite 1 von 2  1 2      
mck

Registriert seit: 12. Jul 2004
8 Beiträge
 
#1

FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 21. Mai 2005, 01:22
Hallo,

Ich versuche mit "Indy FTP Client" die Verbindung mit einem Internet FTP Server über ProxyServer(ProxyPlus Test Anwendung)
Jedes mal bekomme ich eine Exception Message "Connection Closed Gracefully."
Habe alle mögliche ProxyTypes ausprobiert, und es geht nicht.
(Benutze Indy 10)

Glechzeitig habe ich das gleiche mit TotalCommander ausprobiert, funktioniert ohne Probs. aber nur mit dem Typ: "HttpProxy Mit Ftp"

Wenn ich aber den Proxy server ausschalte, und eine direkte Verbindung herstelle, kann ich ohne Probs. auf mein Inet-FTP zugreifen. (natürlich in diesem Fall sind die Proxy einstellungen auf "fpcmNone" = aus)

Habe versucht Fehler zu verfolgen (Siehe LOG) :
Also:
idFTP.Connect => GetResponse([220]) => CheckConnected
und bei CheckConnected hängt der erstmal ca. 5 Minuten, dann macht die Exception.
(Siehe LOG unten)



So schaut mein Code aus ( fast so! )

// Using Indy V10

idFTP1.AutoLogin := True;
idFTP1.Username := "FTPUserName";
idFTP1.Password := "FTPUserPasword";
idFTP1.Host := "Target FTP Host IP Address"; // 70.***.***.***

idFTP1.ProxySettings.ProxyType := fpcmOpen; // or fpcmHttpProxyWithFtp;
idFTP1.ProxySettings.UserName := ""; // no Proxy - UserName and password requed
idFTP1.ProxySettings.Password := ""; // no Proxy - UserName and password requed
idFTP1.ProxySettings.Host := "ProxyServerIPAddress"; //192.168.***.***
idFTP1.ProxySettings.Port := 4480; // Proxy Port

idFTP1.Passive := TRUE; // or FALSE?
idFTP1.ConnectTimeOut := 7000;
idFTP1.TransferTimeOut := 7000;

try
idFTP1.Connect; // => Exception by GetResponse([220])=>CheckConnected
ShowMessage('Connect is OK!');
except
on E : Exception do
begin
ShowMessage(E.Message); // bzw. Add Line to LOG Memo.
end;
end;


Und hier ist die LOG Ausgabe.
Kommt von meinem Unit + idFTP,idTCPConnection.

///////////////// LOG OUT (FROM Connect Function) /////////////////
PROXY-TYPE:Open
PROXY-HOST:192.168.***.***
PROXY-USER:
FTP-HOST:70.***.***.***
FTP-USER:FTPUserName
FTP: PASSIVE
FTP-SET-CONNECTTIMEOUT:7000
FTP-SET-TRANSFERTIMEOUT:7000
Connecting to FTP ...
LOG:FTPCONNECTSTART // Calling idFTP1.Connect
LOGROXY_L:70.***.***.***:21 // Parameters in the Connect function
LOGROXY_F:192.168.***.***:4480 // Parameters in the Connect function
LOG:USING TLC? => NO
LOG:CALL CONNECT... // inherited Connect;
FTP-STATUS:Connecting to 192.168.***.***. // idFTP1.OnStatus
FTP-STATUS:Connected. // idFTP1.OnStatus
LOG:CALL RESPONSE... // Calling GetResponse([220])
LOG:CALL GetInternalResponse... // Calling GetInternalResponse
LOG:CALL CheckConnected... // CheckConnected => after 5 Min. => Exception
FTP-STATUSisconnected. // idFTP1.OnStatus
ERROR!:Connection Closed Gracefully. // Exception !!!!
///////////////////////////////////////////////////////////////////////// END LOG ///////////////////

Was mach ich denn falsh?
Hat jemand einen funktionierenden Beispiel Code?

Grüß,
Alex
  Mit Zitat antworten Zitat
KringKing

Registriert seit: 13. Mai 2009
6 Beiträge
 
#2

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 13. Mai 2009, 12:26
Ich habe ein ähnliches Problem, das mit Connection Closed Gracefully habe ich nur wenn ich mein Programm aus Delphi (Delphi5) heraus starte.

Allerdings funktioniert das mit dem Proxy bei mir auch nicht, ich bin in der Schule und arbeite an einem FTP Client. Um in der Schule in benutzen zu können muss ich die Proxy Daten eintragen, doch mein Programm verbindet einfach nicht und stürzt ab.
  Mit Zitat antworten Zitat
KringKing

Registriert seit: 13. Mai 2009
6 Beiträge
 
#3

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 13. Mai 2009, 17:56
Kann da wirklich keiner helfen? Das glaube ich nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#4

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 13. Mai 2009, 18:04
Hallo KringKing

Mal ein paar Hilfen für den Einstieg im Forum :
  • Pushen erst nach 24 Stunden!
  • Bei konkreten Probleme hilft der Quelltext

Gruß,
Daniel
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
KringKing

Registriert seit: 13. Mai 2009
6 Beiträge
 
#5

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 13. Mai 2009, 18:34
Delphi-Quellcode:
if verbinden then with MyFTP do // Wenn keine Verbindung besteht dann Verbinde
        begin
        // Eingabe der FTP Daten
        Username := Edit2.Text;
        Password := Edit3.Text;
        Host := Edit1.Text;
        ProxySettings.ProxyType := fpcmOpen;
        ProxySettings.UserName := '';
        ProxySettings.Password := '';
        ProxySettings.Host := '85.214.148.109';
        ProxySettings.Port := 3128;
             try
                Connect; // Verbindung herstellen
                ShowMessage ('Verbindung hergestellt.');
                Button1.Caption := 'Trennen';
                ClearAll(true); // Passwortfeld leeren
                globalpath := '/';
                ActList;
             except
                ShowMessage ('Verbindung fehlgeschlagen.');
             end;
        end
Mein Programm macht absolut garnichts und gibt auch keine Fehlermeldung aus.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#6

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 14. Mai 2009, 10:40
Bei FTP gibt es kaum einen Standard für Proxyserver.
Es gibt bestimmt 10 versch. Varianten die einem das Leben schwer machen.
Es gibt aber eine besondere Variante und das ist der sog. Cern-Proxy.
Der Proxyserver wird vom Client über HTTP (!) angesprochen und redet mit dem eigentlichen FTP-Server mit FTP.
Das bedeutet, dass in diesem Fall das File Transfer Protokoll für den Client völlig nutzlos ist, denn er muss ja HTTP sprechen.
Der Proxytype wäre hier fpcmHttpProxyWithFtp, //HTTP Proxy with FTP support. Will be supported in Indy 10
Andreas
  Mit Zitat antworten Zitat
KringKing

Registriert seit: 13. Mai 2009
6 Beiträge
 
#7

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 14. Mai 2009, 14:40
Also ich habe das nicht so ganz verstanden, liegt es jetzt an dem Proxy oder an den Einstellungen der Indy Komponente.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#8

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 14. Mai 2009, 18:25
Zitat von KringKing:
...an den Einstellungen der Indy Komponente.
ProxySettings.ProxyType muss auf fpcmHttpProxyWithFtp gesetzt werden.
Wenn du min. Indy Version 10 hast und die Programmierer von Indy gute Arbeit geleistet haben, dann hast du eine Chance, dass es klappt.
Andreas
  Mit Zitat antworten Zitat
KringKing

Registriert seit: 13. Mai 2009
6 Beiträge
 
#9

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 14. Mai 2009, 19:23
Problem ist nur das ich Indy9 verwende, da ich mein Programm mit Delphi 5 erstellen muss.

Habe Indy9 auf Empfehlung verwendet, da es stabiler laufen würde mit D5.
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#10

Re: FTP über Proxy (Fehler bei Connect > GetResponse)

  Alt 14. Mai 2009, 21:11
Dann wird dein Programm so nicht funktionieren, wenn du an Delphi 5 gebunden bist. Entweder du probierst die 10er aus, oder du verwendest Turbo Delphi. Da muss du die INDY-Komponenten aber von Hand erzeugen, im Quelltext. Drag'n'Drop auf die Form is nicht.
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 21:44 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