Stahovani dat se servru v Delphi
Dobry den.
Proč když stahnu takto soubor s meho servru ma v info datum vytvořeni datum kdy byl stažen a ne ten co je na servru.
Připada mi to jako by se soubor nestah, ale vytvořil novy a do něj nakopirovala data.
If HTTPMethod('GET', 'http://xx.xx.xx.xx/test.txt') then
if ResultCode = 200 then
Document.SaveToFile('test.txt');
hmm, podla mna je to OK, lebo u teba v PC sa vytvoril novy subor
Súbor na Tvojom PC neexistuje - keď ho stiahneš, vytvorí sa na disku nový súbor...
Kedy (dátum+čas)??? No predsa vtedy kedy ho stiahneš...
Edit: možno by si sa mohol zamerať na dátum zmeny súboru, tzn. dátum kedy bol pôvodný súbor vytvorený/modifikovaný...
Tak toto by bylo vyřešene,dik.
Ještě bych měl jeden dotaz.
Jakym zpusobem je v programech vyřešeno stahovaní dat,
že při stahovaní je třeba ProgressBar, ktery ukazuje pruběh stahovaní.
Zpracovává se událost, která ti dává informaci o průěhu zpracování.
Buď můžeš zobrazovat jen nějakou animaci, nebo si nejprve zjistíš velikost souboru, podle toho nastavíš ProgressBar.Max a v udalosti pak hýbeš s ProgressBar.Position podle množství stažených dat.
Je to obecná odpověď, ale ty jsi nenapsal, co pro stahování používáš.
S tym ProgressBar to je jasne, ale jak zjistim kolik už je toho stahle.
Ale napsal, uplně nahoře.
A to HTTPMethod() je odkud? INDY, Synapse, nejaka jinak knihovna...?
To, ze napises kousek zdrojaku neznamena, ze je jasne, co jsi ke stahovani pouzil!
Synapse
V tom pripade si musis napsat udalost nad TSocket, udalost OnStatus
Informace i priklad najdes v dokumentaci k Synapse:
http://www.ararat.cz/synapse/doku.php/public:howto :onstatus
Mohl by mi prosim ještě někdo napsat jak funguje toto.
Pokud to použiji na nějaky maly souborek, tak ok.
Pokud to použiji na nějakou obludu tak se projekt na chvili sekne.
Ja myslel že si to stahne se servru jen hlavičky ale vypada to že to stahuje cely soubor.
No mně by zajimalo spiš to zamrznuti při stahovani co je uvedeno nahoře.
Když necham sosnout nějaky velky soubor tak mi program zamrzne dokud se soubor nestahne.
Je třeba to dat do vlakna nebo je jine řešeni.