Autor Beitrag
schaumermal
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 72



BeitragVerfasst: Fr 13.01.06 16:08 
Hallo,

ich spiele ein wenig mit der Funktion "urldownloadtofile".

Ich habe ein Programm geschrieben, welches über die Funktion urldownloadtofile eine Datei aus dem Internet herunter lädt. Dies funktioniert auch einwandfrei.
Allerdings ist mir folgendes aufgefallen:

Der Download der Datei geht genau 1-mal. Danach wird bei Aufruf der Funktion nicht die Datei aus dem Internet geladen sondern die von der lokalen Platte aus dem Verzeichnis
„C:\Dokumente und Einstellungen\Laptop\Lokale Einstellungen\Temporary Internet Files“.

Es sieht also so aus, als ob diese Funktion zuerst in dem Verzeichnis „C:\Dokumente und Einstellungen\ Laptop \Lokale Einstellungen\Temporary Internet Files“ nachschaut, ob diese Dateivorhanden ist, falls ja lädt er diese und nicht die aus dem Internet.

Kann mir jemand sagen, wie ich immer die Datei aus dem Internet lade?


Gruß
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 13.01.06 17:14 
Ich bin nicht 100% sicher, ob ich die richtige Funktion erwischt habe :oops:, aber du könntest versuchen, den Cache-Eintrag deiner Datei mit DeleteUrlCacheEntry" zu entfernen. Die Parameter der Funktion findest du im MSDN von Microsoft oder in einem lokal auf deinem Rechner installierten PSDK.
schaumermal Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 72



BeitragVerfasst: Fr 13.01.06 17:44 
Hi,

Danke für Deine Antwort.
Nur leider müsste diese Einstellungen an allen PC's erfolgen, die an diesem Update teilnehmen. Dies kann ich aber nicht sicherstellen. :(
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Fr 13.01.06 19:13 
Mir war so, als hättest du geschrieben:
user profile iconschaumermal hat folgendes geschrieben:

Ich habe ein Programm geschrieben, welches über die Funktion urldownloadtofile eine Datei aus dem Internet herunter lädt.

Hindert dich irgendwer oder irgendwas, in dein Programm vor dem Download der Datei dafür zu sorgen, dass eine evtl. im Cache vorhandene Datei vorher entfernt wird? :gruebel:
schaumermal Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 72



BeitragVerfasst: Sa 14.01.06 22:56 
Hi,

stimmt ich habe dies geschreiben.
Allerdings habe ich nie behauptet, dass dieses Programm nur auf meinem Rechner läuft.
Auserdem wäre es auch nicht sinnvoll eine Update zu erstellen, dies in's I-Net zu stellen und danach über ein Updateprogramm wieder lokal auf meinen Rechner zu laden . :wink:

Also ist meine Frage immer noch offen.
Kennt jemach hierfür eine Lösung?


Gruß
thkerkmann
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 20

Windows 7
Delphi 2010 Professional
BeitragVerfasst: So 15.01.06 15:54 
Hi,

erweitere einfach mal die URL

z.B.

URL := meineURL + '?zeit=' + Formatdatetime('yyyymmddhhnnsszzz',Now);

dann brauchst Du auf den Cache der Internetlibrary keine Rücksicht zu nehmen.

Ich meine es gibt aber auch noch einen Parameter mit dem man das cache-verhalten steuern kann.

suche mal im web nach httpget

da gibt es eine Komponente um genau das zu machen..

Gruss

Thomas
schaumermal Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 72



BeitragVerfasst: Mo 16.01.06 01:55 
Hi,

Danke für Deinen Hinweis.
Ich habe jetzt allerdings eine Lösung gefunden, die zuerst die Datei auf dem Cache löscht und somit immer die aktuelle Datei aus dem Internt lädt.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
   // Zuerst die Datei löschen
   DeleteURLCacheEntry(Quelle); 

   // Datei neu aus dem I-Net laden
   URLDownloadToFile(nil,Quelle,Ziel,0,CDownStatus);



Danke und Gruß

Moderiert von user profile iconraziel: Delphi-Tags hinzugefügt
MathiasSimmack
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 16.01.06 16:02 
Ja, aber genau das habe ich doch vorgeschlagen. :roll:
Oh, Mann.