Hallo,
schon seit einer ganzen Weile versuche ich verzweifelt, die Größen von Dateien auf einem
FTP-Server zu ermitteln. Letztlich funktioniert hat eigentlich:
Delphi-Quellcode:
function getfilesize(Dateiname:String):Integer;
var f:PDWord;
begin
result := -1;
f := ftpOpenfile(FHSession,Pchar(Dateiname),
GENERIC_READ,
FTP_TRANSFER_TYPE_BINARY,
0);
if assigned(f) then
try
result := ftpGetFileSize(f,nil);
finally
end;
Das funktioniert aber immer nur einmal. Deshalb stand im Original auch
Delphi-Quellcode:
finally
InternetClosehandle(f);
end;
So kommt es aber bei jeder Ausführung der Funktion dazu, dass mein Programm nicht mehr reagiert. Komischerweise trat das Problem nicht auf, wenn ich einen Haltepunkt vor "InternetClosehandle(f);" gesetzt hatte.
Weiß jemand, woran das liegt, bzw. wie ich das Problem beseitigen kann? Mir würde auch einfach eine eigene funktionierende Funktion helfen.
Vielen Dank im Voraus!
Treuergebenst,
Samufi