Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ftp download (https://www.delphipraxis.net/83514-ftp-download.html)

Counter909 4. Jan 2007 00:04


Ftp download
 
ich versuche gerade eine .txt fil von einem Ftp runterzuladen
doch will es noch nicht ganz klappen i.wie... in moment versucht er was zu laden
doch dann kommt ne meldung "no such direction" und wenn ich dann noch debugge
dann erstellte eine leere .´txt dtei mit dem name test.txt:


Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
vAR success: integer ;
    localfilename: widestring ;
    remotefilename: widestring;
begin
  ftp.Host    := 'xxxx';
  ftp.Port    := strtoint(edit2.text) ;
  ftp.Username := 'xxxx';
  ftp.Password := 'xxxx';
try
ftp.Connect();
exept
 showmessage('keine verbindung');
if ftp.connected then begin
       showmessage('verbindung vorhanden');
                      end;

  begin localfilename := 'test.txt' ;
        remotefilename:= 'neu.txt' ;
        ftp.get(remoteFilename,localFilename);

Daniel G 4. Jan 2007 00:15

Re: Ftp download
 
Jo, geil.... Wenn du uns jetzt auch noch erzählen würdest, welche FTP - Komponente du verwendest... :mrgreen:


Außerdem sollte dir bewusst sein, dass alles, was nach except kommt, auch nur im Falle einer Exception ausgeführt wird.... Entweder kürzt du also den QT richtig, so das wir damit noch was anfangen können, oder du lässt es gleich.... So wird er nicht kompillieren...

Counter909 4. Jan 2007 00:18

Re: Ftp download
 
meinst du das ???
ja gut, das mit except ist auch net so wichtig..also compilieren tut er schon..
wiegesagt ne verbindung stellt er vermutlich auf aber erstellt eben nur eine .txt datei
auf dem localen rechner


-----------idftp------------

Daniel G 4. Jan 2007 00:19

Re: Ftp download
 
Zitat:

Zitat von Counter909
-----------idftp------------

Jo.

Counter909 4. Jan 2007 20:33

Re: Ftp download
 
hat keiner eine idee ? :-(

TonyR 4. Jan 2007 20:59

Re: Ftp download
 
Kommt in deinem Programm nun eigentlich die Meldung "Verbindung vorhanden", oder nicht???

Edit: Was soll das überhaupt heißen?
Zitat:

Zitat von Counter909
-----------idftp------------


Counter909 4. Jan 2007 21:28

Re: Ftp download
 
ja die verbindung ist wohl vorhanden...ich brauch jetzt nur noch
hilfe bei deim datei-runterladen


idftp .. das ist der FTP-Komponent den man dann auch bei Uses einfügt und so weiter


mfg
counter

Counter909 8. Jan 2007 22:25

Re: Ftp download
 
kann damit immernoch keiner was mit anfangen ? :-(

mr47 8. Jan 2007 22:34

Re: Ftp download
 
Mach doch mal das Try-Except weg und guck was für ne Fehlermeldung zurückgegeben wird.

Andidreas 8. Jan 2007 22:52

Re: Ftp download
 
hier haste mal en bsp.

Delphi-Quellcode:
FTP.Host := edt_Host.Text;
FTP.Username := edt_User.Text;
FTP.Password := edt_PW.Text;

    Try
      FTP.Connect;
    Except
      MessageDlg('No Connection!', mtError, [mbOK], 0);
    End;
und kuck dir nochmal denn get befehl an, der hat imho ein bischen wenig parameter!

Daniel G 8. Jan 2007 23:28

Re: Ftp download
 
Existiert die Datei überhaupt? Muss man bei den Indy's explizit in das Verzeichnis wechseln? Und hättest du in der Zeit nicht velleicht schon ein fertiges Demoprogramm im Netz gefunden?

Fragen über Fragen....

mr47 9. Jan 2007 15:16

Re: Ftp download
 
Vielleicht heißt die Meldung
Zitat:

Zitat von Counter909
no such direction

ja in echt
Zitat:

No such file or directory
:gruebel:

Counter909 9. Jan 2007 17:48

Re: Ftp download
 
wenn ich dann die fertige .exe drück... dann kommt schon:


"Test.txt: No such file or directory"


also das connecten funzt ja, das ist eigentlich kein Problem, drück ich zweimal drauf:
kommt auch "already connected". Nur diese Geschichte mit dem "Get"

wo finde ich denn da am besten Help ? bei google hab ich schon so viel gesucht....

Daniel G 9. Jan 2007 17:52

Re: Ftp download
 
Zitat:

Zitat von Counter909
"Test.txt: No such file or directory"

Ähh.... Test.txt ist laut deiner Variablendeklaration aber die lokale Datei... :gruebel:

Counter909 9. Jan 2007 18:15

Re: Ftp download
 
genau.... also es funktioniert ja, dass er auf dem localen rechner eine datei als
text.txt speichert...aber geplant ist ja dass er die remotefile "neu.txt" vom ftp als test.txt abspeichert auf meinem Rechner

mr47 9. Jan 2007 18:18

Re: Ftp download
 
Ich weiß ja nicht, aber schonmal geguckt, ob in der Datei auf dem Server was drinsteht?

Daniel G 9. Jan 2007 19:32

Re: Ftp download
 
Durch 30 Sekunden googeln gefunden:

http://www.indyproject.org/Sockets/Demos/index.en.aspx

Probier' mal die FTP - Demo aus. Wenn es dann immer noch nicht geht, liegt der Fehler nicht am QC als solches... :wink:

Counter909 10. Jan 2007 18:34

Re: Ftp download
 
also hab mir das da mal genau angeguckt...hab da noch was gefunden mit dem "ftp.transfertype" aber funktionieren will es immernoch nicht :-( verstehe ich jetzt ganz und gar nicht. "no such file or Directory". Aber ich möchte ja auch dass er automatisch eine verbindung herstellt und eine datei runterlädt..alles in einem und nicht wie in den Demos/beispielen... auf den ftp zugreifen und dort erstmal suchen können.

Ansonsten bekomme ich noch diese Meldung:

" raise EIdProtocolReplyError.CreateError(LastCmdResult.Nu mericCode, LastCmdResult.Text.Text); "

mein code sieht jetzt so aus:

Delphi-Quellcode:
  ftp.Host    := 'xxxx';
  ftp.Port    := strtoint(edit2.text) ;
  ftp.Username := 'xxxx';
  ftp.Password := 'xxxx';
  ftp.Connect();
  if ftp.connected then showmessage ('Verbindung erfolgreich');
  ftp.Transfertype:= ftBinary;

  localfilename := 'neu.txt' ;
  remotefilename:= 'neu.txt' ;
  ftp.get(remoteFilename,localFilename);

inherited 10. Jan 2007 18:37

Re: Ftp download
 
Häng mal bitte dein komplettes Projekt an oder schick es mir per PN, ich werde mich der Sache dann annehmen.

Counter909 10. Jan 2007 18:50

Re: Ftp download
 
jopp...hab es dir jetzt geschickt, hoffe du kannst damit was anfangen
habe das Ftp einmal alleine als programm aufgesetzt, ganz simpel also


mfg
counter

Daniel G 10. Jan 2007 18:59

Re: Ftp download
 
Zitat:

Zitat von Counter909
ftp.Transfertype:= ftBinary;

Für Textdateien bitte irgendwas mit "ASCII". "Binary" ist da definitiv falsch. :wink:
Zitat:

Zitat von Counter909
aber funktionieren will es immernoch nicht :-( verstehe ich jetzt ganz und gar nicht. "no such file or Directory".

Ja gut, das wissen wir inzwischen...
Zitat:

Zitat von Counter909
alles in einem und nicht wie in den Demos/beispielen... auf den ftp zugreifen und dort erstmal suchen können.

Dann nimm die Demo und schreib' sie entsprechend um.

Das heißt also, die Demo funktioniert, ja?
Zitat:

Zitat von Counter909
Ansonsten bekomme ich noch diese Meldung:

" raise EIdProtocolReplyError.CreateError(LastCmdResult.Nu mericCode, LastCmdResult.Text.Text); "

Is' wahrscheinlich die obige Meldung.... :wink:

Hagbart 11. Jan 2007 22:59

Re: Ftp download
 
Ich gehe mal davon aus das der Indy FTP Client in der Version 10 und 9 gleich funktioniert, probier das mal aus. Also ich poste dann mal einfach so wie ich es gemacht habe, es ist ganz einfach und es sind keine überprüfungen drine ob man verbdunden ist:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  IdFTP1.Password:= 'XXXXXXX';
  IdFTP1.Username:= 'XXXXXXX';
  IdFTP1.Port:= 21;
  IdFTP1.Host:= 'XXXXXXX';
  IdFTP1.Connect(true, -1);
  IdFTP1.ChangeDir('data');
  IdFTP1.Get('counter.txt', 'counter.txt', true);
end;
OK, du hast es im prinzip genauso, aber probier es einfach mal so und set deine Daten dafür ein.

Hobby-Programmierer 12. Jan 2007 01:37

Re: Ftp download
 
Nabend ...,
was aber wenn diese besagte Textdatei garnet im Root liegt sondern in einem Verzeichnis? Vielleicht sollte man ihm dann auch erklären wie sich der Host zusammensetzt. Versuch mal mit dem Explorer Deine Datei zu lesen, zb.
ftp://Benutzername:Passwort@Hostadre...hnis/Datei.txt

Benutzername & Passwort: sollten klar sein
Hostadresse: zb. blabla.dyndns.org
Verzeichnis: sag ich auch nix zu
Datei.txt: Deine Datei incl. Extension

Um Deinen Clienten zu testen, könntest Du lokal einen Ftp-Server auf Deinem Rechner einrichten, echt einfache Sache dank den Indy-Demos!

LG Mario

inherited 12. Jan 2007 14:04

Re: Ftp download
 
Es sieht in deinem Projekt alles richtig aus (Abgesehen von dem Binary). Ich wage zu behaupten dass das Problem das ist, was meine Vorredner hier beschrieben haben.

Counter909 12. Jan 2007 20:31

Re: Ftp download
 
moin


vielen dank, ich werde mir das jetzt mal gut angucken.....
werde gleich bericht schreiben


EDIT: ahh vielen dank, habe es jetzt endlich hinbekommen :-) : das problem lag dann eher an der datei auf dem ftp : denn wenn ich zum beispiel eine datei mit dem namen: neu.txt erstellt habe, war die adresse oder der name nie so richtig, sondern: neu%20.txt
verstehe ich zwar nicht ganz, aber nun klappt es :-)
wenn ich andere dateien hochlade, also keine text.dateien, dann muss ich aber auch "binary" stellen oder ? musste ich jedenfalls also ich mal eine batch geschrieben habe....



mfg
counter


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz