Znalazłem procedurę do pobierania plików z FTP
np:
http://www.swissdelphicenter.ch/torry/showcode.php?id=1095
lub http://www.delphipages.com/forum/archive/index.php/t-208496.html
Plik pobiera się ładnie ale mam problem z pokazaniem progresa.
Otóż podczas pobierania, progres kilkakrotnie zaczyna od początku (ale jeśli pobiera się ten sam plik wielokrotnie ale zawsze w tych samych momentach, przy czym na tym samym pliku u mnie zawsze na 10%, u kolegi na 17%). Ale plik w tym czasie pobiera się dalej.
w tej funkcji jest taki fragment:
if (bufsize > 0) and (bufsize <= READ_BUFFERSIZE) then
BlockWrite(LocalFile, buffer, bufsize);
dwBytesRead := dwBytesRead + bufsize;
{ Show Progress }
ProgressBar.Position := Round(dwBytesRead * 100 / fileSize);
fileSize się nie zmienia, czyli dwBytesRead musi być 0.
Ten kod widziałem na wielu stronach ale nikt nie opisywał takiego problemu. Ktoś wie czemu się tak może dziać?