Auf FTP Server von einem File modification Time und Date auslesen

  • Hallo,

    ich habe ein kleines Problem und finde keine Lösung. was mit Sicherheit auch daran liegt das ich nicht gerade der Crack bin.

    Ich möchte mich gerne zu einem FTP Server verbinden und von einer Datei das Modification-Datum und vor allem die Zeit auslesen.

    Ich habe es mit

    _FTP_ListToArrayEx probiert bekomme aber immer nur im array [n][3] eine 00:00:00 Zeit zurück. FileName, Size und Date funktioniert richtig.


    Vielen Dank

    buck

  • Ich habe es mit

    _FTP_ListToArrayEx probiert bekomme aber immer nur im array [n][3] eine 00:00:00 Zeit zurück.

    Wenn du schon dein Script nicht zur Verfügung stellst, damit man dir anständig helfen kann, dann solltest du uns aber zumindest die Zeile mit dem Funktionsaufruf von _FTP_ListToArrayEx zeigen.

    Möglich ist, du hast _FTP_ListToArrayEx mit falschen Parametern gestartet, oder dein FTP-Server ist evtl. falsch konfiguriert.

    Hier ein funktionierendes Beispiel mit dem FTP-Server von AVM... teste das Beispiel mal mit deiner Server-Adresse.

  • Möglich ist, du hast _FTP_ListToArrayEx mit falschen Parametern gestartet, oder dein FTP-Server ist evtl. falsch konfiguriert.

    Falsche Parameter schliesse ich aus, denn:

    _FTP_ListToArrayEx probiert bekomme aber immer nur im array [n][3] eine 00:00:00 Zeit zurück. FileName, Size und Date funktioniert richtig.

    Falsch konfigurierter FTP-Server wäre möglich, dann wären aber alle von mir damals (< 3.3.14)getesteten FTP-Server falsch konfiguriert gewesen.

    So auch der in der Hilfe erwähnte:

    Code
     Local $sServer = 'ftp.csx.cam.ac.uk' ; UNIVERSITY OF CAMBRIDGE ANONYMOUS FTP SERVER

    Alle von mir getesten FTP-Servern gaben nur das Erstellungsdatum zurück, Änderungs- und Letzter Zugriffs-Datum wurde von allen mit leer ausgegeben. Wenn es mit deinem Skript auf deinem FTP-Server von AVM klappt, muß ich meine Vermutung: 'Fehler in der _FTPEx.au3' revidieren. Es bleibt nur noch: 'Konfigration verweigert es!'.

  • Vielen Dank für Eure Hilfe

    ich kann mir nicht erklären was los war, heute teste ich das erneut und das Datum wird mit ausgelesen und ist nicht mehr 00:00;00:00.

    Habe nichts im Script geändert.

    danke

  • So auch der in der Hilfe erwähnte:

    Local $sServer = 'ftp.csx.cam.ac.uk' ; UNIVERSITY OF CAMBRIDGE ANONYMOUS FTP SERVER

    Der in der Hilfe (engl. sowie deutsch) zur Funktion _FTP_ListToArrayEx erwähnte Servername lautet aber nicht 'ftp.csx.cam.ac.uk' sondern (wahrscheinlich ein Tippfehler) :

    $sServer = 'ftp.csx.cam.ac.uk1'

    Bei allen anderen Beispielen zu _FTP... steht korrekt : $sServer = 'ftp.csx.cam.ac.uk'

    Damit erhält man dann auch das - korrekte- Rückgabearray :

    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    Einmal editiert, zuletzt von Musashi (24. Februar 2019 um 16:36)

  • Bei allen anderen Beispielen zu _FTP... steht korrekt : $sServer = 'ftp.csx.cam.ac.uk'

    Damit erhält man dann auch das - korrekte- Rückgabearray :

    das Array ist auch nicht kprrekt, es fehlen Erstellungsdatum und Zugriffsdatum. Seltsamerweise kommt jetzt das Modifik ationdatum, stattdesen wird das Erstellungsdatum unterschlagen. Doch ein Fehler in der _FTPEx.au3?

  • Hier könnte der Hase im Pfeffer liegen:

    FtpFindFirstFileW / InternetFindNextFileW

    Because the FTP protocol provides no standard means of enumerating, some of the common information about files, such as file creation date and time, is not always available or correct. When this happens, FtpFindFirstFile and InternetFindNextFile fill in unavailable information with a best guess based on available information. For example, creation and last access dates are often the same as the file's modification date.

    Da das FTP-Protokoll keine Standardmethoden für die Aufzählung bietet, sind einige der üblichen Informationen zu Dateien, z. B. Datum und Uhrzeit der Dateierstellung, nicht immer verfügbar oder korrekt. In diesem Fall geben FtpFindFirstFile und InternetFindNextFile nicht verfügbare Informationen mit einer besten Schätzung basierend auf den verfügbaren Informationen ein. Das Datum der Erstellung und des letzten Zugriffs stimmt beispielsweise häufig mit dem Änderungsdatum der Datei überein.

  • Die Anmerkung, dass der Servername 'ftp.csx.cam.ac.uk1' im Beispiel zu _FTP_ListToArrayEx einen Tippfehler beinhaltet ist hier sicher unstrittig.

    Hier könnte der Hase im Pfeffer liegen:

    ...
    Da das FTP-Protokoll keine Standardmethoden für die Aufzählung bietet, sind einige der üblichen Informationen zu Dateien, z. B. Datum und Uhrzeit der Dateierstellung, nicht immer verfügbar oder korrekt.

    Ja, das könnte der Hase in Pfeffer(-rahmsauce) sein !

    Ich habe es mit folgender Seite probiert - auch mit _FTP_FindFileFirst/Next auf ein Unterverzeichnis.

    _FTP_FindFileFirst/Next liefert ebenfalls nur das Datum der letzten Änderung (als $tagFILETIME).

    Die Uhrzeiten stehen auf 00:00:00, obwohl vorhanden (siehe Grafik). Schaut man auf das Array von Index of/ , dann wird aber bei test/ eine Uhrzeit angegeben.

    Möglicherweise gibt der Server abhängig von Rechten (weil Zugriff anonymous) nur bestimmte Daten preis. Das ist aber eine Annahme - kein Wissen;). Ggf. liegt das Problem auch, wie autoBert vermutet, in der FTPEx.au3 begraben :/.

    Gruß Musashi

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    3 Mal editiert, zuletzt von Musashi (25. Februar 2019 um 17:54)