Entwickler-Ecke
Internet / Netzwerk - idFTP Verbindungsfehler
Dude566 - Di 17.02.09 17:50
Titel: idFTP Verbindungsfehler
Also, ich habe eben mal schnell ein Programm geschrieben, mit dem eine Datei auf meinen FTP hochgeladen wird.
Jetzt kommt aber diese Fehlermeldung:
Und wenn ich nachschaue wurde die Datei auch nicht übertragen.
Frage: Woran kann das liegen? Habe ich etwas vergessen oder falsch gemacht?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| procedure TForm1.Button1Click(Sender: TObject); begin OpenDialog1.Execute; with idFTP1 do begin Username := 'musterlogin'; Password := 'musterpw'; Host := 'muster.host.de'; Connect; IdFTP1.Put(OpenDialog1.FileName, ExtractFileName(OpenDialog1.FileName)); Disconnect; end; end; |
Gruß Dude566
LexXis - Di 17.02.09 18:11
Versuch mal Put() erst in OnAfterClientLogin auszuführen.
Bis her schickst du dem FTP-Server ja deinen Login und schmeisst dann gleich die Datei hinterher. Lass ihn erstmal den Login fertig stellen und mach dann mit der restlichen Ausführung deines Programmes weiter.
Dude566 - Di 17.02.09 18:22
Wie meinst du das, wo muss das hin?
LexXis - Di 17.02.09 19:04
OnAfterClientLogin ist ein property von TidFTP. Das findest du im Object Inspector unter "Events" (je nach Sprache eben ;)). Darauf einfach doppelklicken und in der Procedure die damit im Code Editor hinzugefügt wurde dein Put() eintragen. :)
Dude566 - Di 17.02.09 23:46
Klappt leider trotzdem noch nicht, kann es vielleicht sein das der Server den Login durch mein Programm blockt?
PS: Ich habe einen FTP bei
Kilu.de [
http://www.kilu.de]
Xentar - Di 17.02.09 23:54
Kannst du dich denn mit einem normalen FTP Programm dahin verbinden?
Dude566 - Mi 18.02.09 00:04
Ja, ich kann über deren Homepage und FileZilla mit dem Server arbeiten.
Xentar - Mi 18.02.09 00:10
Musst du dafür irgendwas bestimmtes einstellen? Passivmodus, anderen Port oder sowas?
Die Fehlermeldung sieht so aus, als hättest du dich beim Benutzer / Passwort vertippt..
Dude566 - Mi 18.02.09 17:44
:oops: Es lag daran das ich den Loginnamen nicht im richtigen Format hatte.
Also eingeloggt bin ich jetzt und es kommt nicht mehr die Fehlermeldung, aber die Datei wird immer noch nicht hochgeladen.
Ich schaue nochmal weiter...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdFTP;
type TForm1 = class(TForm) IdFTP1: TIdFTP; Button1: TButton; OpenDialog1: TOpenDialog; Button2: TButton; procedure Button1Click(Sender: TObject); procedure IdFTP1AfterClientLogin(Sender: TObject); procedure Button2Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin OpenDialog1.Execute; with idFTP1 do begin Username := 'beispiel@1'; Password := 'beispiel'; Host := 'beispiel.kilu.de'; Connect; end;
end;
procedure TForm1.IdFTP1AfterClientLogin(Sender: TObject); begin IdFTP1.Put(OpenDialog1.FileName, ExtractFileName(OpenDialog1.FileName)); end;
procedure TForm1.Button2Click(Sender: TObject); begin with idFTP1 do Disconnect; end;
end. |
Xentar - Mi 18.02.09 18:02
Hast du mal einen Haltepunkt gesetzt, ob der da überhaupt durchläuft, und ob OpenDialog1.FileName noch einen gültigen Wert enthält?
Dude566 - Mi 18.02.09 18:18
Was meinst du mit Haltepunkt?
Also ich habe getestet ob er überhaupt bis zum Uploaden kommt, er müsste es eigentlich machen denn die ShowMessage danach wird ausgeführt.
Habe das OpenDialog1.Execute jetzt auch in das OnAfterFTPLogin gemacht.
Dude566 - Do 19.02.09 18:09
Keiner mehr da der eine Idee hat?
matze - Do 19.02.09 18:16
Naja. Die Fehlermeldung deutet ja darauf hin, dass nicht die Verbindung fehlschlägt, sonder der Login.
Also entweder authentifiziert sich dein Tool nicht richtig am Server oder die Zugangsdaten sind falsch.
Oder (wie weiter oben auch schon vermutet) es hängt mit dem Passiv-Modus zusammen. Schnapp dir doch mal einen Packet-Sniffer á la Wireshark und schau direkt auf der Leitung was andere Programme anders machen als deins.
Dude566 - Do 19.02.09 18:29
Aber die Fehlermeldung mit dem Login, ist ja nicht mehr existent, es lädt das was es soll nur einfach nicht hoch.
matze - Fr 20.02.09 11:21
Ich versteh im Moment nicht mal, was nicht funktioniert...
GTA-Place - Fr 20.02.09 13:46
Hast du auf dem FTP-Server einen Spezialpfad wo die Dateien hinmüssen? html/ oder ähnliches?
Dude566 - Fr 20.02.09 14:01
Ich habe keinen speziellen Pfad angegeben, ich verbinde einfach nur und lade die Datei dann in das Root verzeichnis.
Also müsste es ja eigentlich machen wenn ich nichts anderes angebe.
Dude566 - Sa 21.02.09 16:54
Bitte lasst den Thread hier nicht in Vergessenheit geraten.
*PUSH* :wink2:
Xentar - Sa 21.02.09 17:44
Dude566 hat folgendes geschrieben : |
| Bitte lasst den Thread hier nicht in Vergessenheit geraten. |
Du könntest auch einen neuen Thread aufmachen, da das Problem "Verbindungsfehler" ja erledigt ist..
Und da dann nochmal genau erklären, was nun das Problem ist, und was du schon probiert hast. Ich steig da nämlich nicht mehr durch, was nun noch aktuell ist ;)
Dude566 - Sa 21.02.09 18:46
Ok mache ich, dachte das wäre nicht nötig.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!