Filelänge auf FTP ermitteln

Anfängerfragen zum Programmieren mit PureBasic.
amiga123
Beiträge: 88
Registriert: 17.02.2009 18:05

Filelänge auf FTP ermitteln

Beitrag von amiga123 »

Hallo
Gibt es die Möglichkeit die Größe einer Datei auf dem FTP-server zu ermitteln.
Habe das Problem das wenn mein Programm Daten auf den FTP speichert, diese Datei manchmal die größe 0 hat.
Jetzt würde ich gerne prüfen ob die Datei größe 0 hat, um sie dann nochmal zu übertragen.
Gruß Amiga
Pure Basic 4.60 Vollversion
http://www.Sundisp.de
Benutzeravatar
helpy
Beiträge: 636
Registriert: 29.08.2004 13:29

Re: Filelänge auf FTP ermitteln

Beitrag von helpy »

Mit ExamineFTPDirectory prüfen, ob die Datei existiert, wenn ja mit FTPDirectoryEntrySize die Größe abfragen.
Windows 10
PB Last Final / (Sometimes testing Beta versions)
amiga123
Beiträge: 88
Registriert: 17.02.2009 18:05

Re: Filelänge auf FTP ermitteln

Beitrag von amiga123 »

Danke für den Tip.
Jedoch habe ich noch immer das Problem das die Datei nicht richtig auf den FTP übertragen wird.
Weiß jemand woran das liegen kann.?
Wenn ich eine Routine schreibe die Dateilänge prüft und die Datei bei Dateilänge 0 nochmal überträgt funktioniert das auch nicht 100%. Programm bleibt dann manchmal hängen.

Hier mein Code zur Übertragung auf den FTP. Ist nur eine HTML Datei die auf den FTP kopiert werden muß

Code: Alles auswählen

   

 If OpenFTP(6, server$, user$, pass$, Passiv, 21 )

       If SendFTPFile(6, programm$,serverpfad$+programm$)

       EndIf

Endif
Gruß Amiga123
Pure Basic 4.60 Vollversion
http://www.Sundisp.de
Benutzeravatar
rolaf
Beiträge: 3843
Registriert: 10.03.2005 14:01

Re: Filelänge auf FTP ermitteln

Beitrag von rolaf »

Zeig doch mal wie der String serverpfad$ bei dir ausseht, vielleicht liegt da ein Fehler vor?
:::: WIN 10 :: PB 5.73 :: (x64) ::::
amiga123
Beiträge: 88
Registriert: 17.02.2009 18:05

Re: Filelänge auf FTP ermitteln

Beitrag von amiga123 »

So:

Code: Alles auswählen

Pfad/
Das Problem ist das es ja meistens geht, nur ab und zu wird die Datei nicht richtig übertragen.

Könnte es an der Aktualisierung der HTML Datei liegen. Diese wird automatisch alle 100 Sekunden
aktualisiert .

Code: Alles auswählen

<meta http-equiv="refresh" content="100">
gruß Amiga123
Pure Basic 4.60 Vollversion
http://www.Sundisp.de
Benutzeravatar
rolaf
Beiträge: 3843
Registriert: 10.03.2005 14:01

Re: Filelänge auf FTP ermitteln

Beitrag von rolaf »

amiga123 hat geschrieben:So:

Code: Alles auswählen

Pfad/
Das Problem ist das es ja meistens geht, nur ab und zu wird die Datei nicht richtig übertragen.

Könnte es an der Aktualisierung der HTML Datei liegen. Diese wird automatisch alle 100 Sekunden
aktualisiert .

Code: Alles auswählen

<meta http-equiv="refresh" content="100">
gruß Amiga123
Hmmm, ich nehme mal an Pfad/ gibt es, da es ja nur ab und zu nicht klappt. Weil meistens ist das ja www/ oder html/. :wink:

Das mit dem Meta-Refresh könnte es nicht sein, weil damit die Datei nicht aktuallisiert wird sondern lediglich sich selbst neu aufruft. Ändern tut sich da nur was, wenn eine neue Datei hochgeladen oder per PH'P eine neue Datei erstellt wurde. Passieren dürfte da eigendlich nix beim Hochladen. Lediglich wenn jemand gerade auf die Datei zugreift könnte er Datensalat (aus zwei versch. Versionen der Datei) im Browser angezeigt bekommen.
Zuletzt geändert von rolaf am 02.10.2009 15:09, insgesamt 2-mal geändert.
:::: WIN 10 :: PB 5.73 :: (x64) ::::
Benutzeravatar
HeX0R
Beiträge: 3042
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Re: Filelänge auf FTP ermitteln

Beitrag von HeX0R »

Bei SendFTPFile dürfen keinerlei Pfadinformationen in RemoteFilename$ sein.
Steht auch so in der Hilfe.

Zum gewünschten Pfad musst du dich vorher durch [mehrmaliges] Aufrufen von SetFTPDirectory() hangeln.
Benutzeravatar
rolaf
Beiträge: 3843
Registriert: 10.03.2005 14:01

Re: Filelänge auf FTP ermitteln

Beitrag von rolaf »

HeX0R hat geschrieben:Zum gewünschten Pfad musst du dich vorher durch [mehrmaliges] Aufrufen von SetFTPDirectory() hangeln.
Bingo :allright:
:::: WIN 10 :: PB 5.73 :: (x64) ::::
amiga123
Beiträge: 88
Registriert: 17.02.2009 18:05

Re: Filelänge auf FTP ermitteln

Beitrag von amiga123 »

Gut dann werde ich das mal Probieren.

Probleme sind ja da um gelöst zu werden, und manchmal ist es ja nur eine Kleinigkeit.

Gruß Amiga123
Pure Basic 4.60 Vollversion
http://www.Sundisp.de
amiga123
Beiträge: 88
Registriert: 17.02.2009 18:05

Re: Filelänge auf FTP ermitteln

Beitrag von amiga123 »

Also ich hab das jetzt geändert. Leider ist das Ergebnis das gleiche.
(Ist auch nur ein pfad im Serververzeichniss)

Code: Alles auswählen

   
If OpenFTP(6, server$, user$, pass$, Passiv, 21 )

      If SetFTPDirectory(6,serverpfad$)

       If SendFTPFile(6, programm$,programm$)

       endif

      endif

endif

Die Datei hat immer noch sporadisch die länge 0.

Gruß Amiga123
Pure Basic 4.60 Vollversion
http://www.Sundisp.de
Antworten