Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Up und Download von Dateien (https://www.delphipraxis.net/144039-up-und-download-von-dateien.html)

msickel 28. Nov 2009 16:02


Up und Download von Dateien
 
Hallo liebe Delphianer,

Ich bräuchte mal Eure Hilfe.

Mit diesem Code den ich eventuell sogar hier gefunden habe, lade ich eine normale Textdatei aus dem Internet

Delphi-Quellcode:
function DownloadFile(const url: string;const destinationFileName: string): boolean;
var
  hInet: HINTERNET;
  hFile: HINTERNET;
  localFile: File;
  buffer: array[1..1024] of byte;
  bytesRead: DWORD;
begin
  result := False;
  hInet := InternetOpen(PChar(application.title),INTERNET_OPEN_TYPE_PRECONFIG,nil,nil,0);
  hFile := InternetOpenURL(hInet,PChar(url),nil,0,0,0);
  if Assigned(hFile) then
  begin
    AssignFile(localFile,destinationFileName);
    Rewrite(localFile,1);
    repeat
      InternetReadFile(hFile,@buffer,SizeOf(buffer),bytesRead);
      BlockWrite(localFile,buffer,bytesRead);
      FlashWindow(Application.Handle,True)
    until bytesRead = 0;
    CloseFile(localFile);
    result := true;
    InternetCloseHandle(hFile);
  end;
  InternetCloseHandle(hInet);

end;
Mit einem anderen Stück Code Uploade ich genau die gleiche Textdatei. In der Datei steht nur eine Zahl von 1-3
Nun zu dem Problem, der Upload geht ohne Probleme kann ich mit dem IE kontrollieren.

Mein Programm mit obiger Download Routine läuft immer im Hintergrund und lädt alle 60 Sekunden die Datei, liest den Inhalt der Datei und sollte eigentlich eine Message auf den Bildschirm bringen wenn sich der Inhalt geändert hat.

Der Download geht ohne Probleme, jedoch ist in der geladenen Datei immer der gleiche Wert, obwohl sich der Wert zwischenzeitlich geändert hat. (Datei mit neuem Wert hochgeladen) Irgendwie wird der erste Download gecached, starte ich das Programm welches den Download mach neu, enthält die geladene Datei den neuen Wert. Was mache ich falsch das es nicht via Timer geht?

Liebe Grüsse
Martin

DeddyH 28. Nov 2009 16:05

Re: Up und Download von Dateien
 
Wahrscheinlich wird die Datei nicht physikalisch neu heruntergeladen, sondern aus dem Browsercache geholt. Ist es so besser?
Delphi-Quellcode:
hFile := InternetOpenURL(hInet,PChar(url),nil,0,INTERNET_FLAG_RELOAD,0);

msickel 28. Nov 2009 16:10

Re: Up und Download von Dateien
 
Super,

das wars :-)

Vielen Dank!

DeddyH 28. Nov 2009 16:12

Re: Up und Download von Dateien
 
Keine Ursache :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:11 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz