Problem bei fortlaufenden Downloads von Webcam-Bildern

Anfängerfragen zum Programmieren mit PureBasic.
cologneskater
Beiträge: 24
Registriert: 03.10.2004 18:24

Problem bei fortlaufenden Downloads von Webcam-Bildern

Beitrag von cologneskater »

Hallo, ich erstelle unter XP gerade ein kleines PB-Programm, dass mir von einer Internet-Webcam Bilder auf Platte speichert. Die Webcam stellt ca. alle 15 Sekunden ein neues Bild mit dem immer gleichen Dateinamen testbild.jpg zur Verfügung.

Im Forum habe ich eine Prozedur gefunden, die mir die Dateilänge der Webdatei ermittelt, um so bei einer Veränderung den Hinweis auf ein neues Bild zuverlässig auslesen zu können. Das klappt auch.

An anderer Stelle im Forum habe ich den Hinweis auf eine Win-API-Funktion

URLDownloadToFile_(0,webadresse,lokaler_speichername,0,0)

gefunden, die mir die jpg-Datei auf Platte speichert.

Jetzt zu meinem Problem:

Die Funktion speichert bei wiederholten Abspeicherungen während eines Programmablaufs immer die erste abgespeicherte Dateifassung ab, so als würde die Win-API-Funktion das Bild aus dem lokalen Datencache immer wieder verwenden. Während ich parallel zu dem Programm das Bild in Firefox über den reload-Button aktualisieren kann, findet über die URLDownloadToFile_() Funktion keine aktualisierte Abspeichung statt.

Gibt es hier einen Programmiertrick, um den Datencache zu umgehen?

Gruß Günter
Benutzeravatar
Kiffi
Beiträge: 10711
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Problem bei fortlaufenden Downloads von Webcam-Bildern

Beitrag von Kiffi »

cologneskater hat geschrieben:Gibt es hier einen Programmiertrick, um den Datencache zu umgehen?
Probier mal

Code: Alles auswählen

DeleteURLCacheEntry_(URL$)
vor dem Download aufzurufen.

Grüße ... Kiffi
a²+b²=mc²
cologneskater
Beiträge: 24
Registriert: 03.10.2004 18:24

Beitrag von cologneskater »

Hallo Kiffi,

vielen Dank für den Tipp, jetzt funktioniert es.

Gruß Günter
teachco
Beiträge: 48
Registriert: 12.07.2005 19:44

Problem mit Aktualisierung bei URLDownloadToFile_

Beitrag von teachco »

Das Aktualisierungsproblem hatte ich auch. Jede weitere Änderung der Internetdatei nach dem ersten Laden wurde nicht mehr aktualisiert bzw. nachgeladen, sondern immer nur die Version aus dem Cache. Der Befehl DeleteUrlCacheEntry_(page) löst das Problem.

Code: Alles auswählen

Procedure.b LoadURLFile(file.s,page.s); - Download a file from the internet 
  DeleteUrlCacheEntry_(page)
  If URLDownloadToFile_(#Null,@page,@file,#Null,#Null) = #S_OK
    ProcedureReturn #True 
  Else 
    ProcedureReturn #False 
  EndIf 
EndProcedure
page : Kompletten Pfad (mit Dateinamen) zur Datei auf dem Webserver angeben. Z.B.: "http://www.serverxy.de/pic/smile.png"
file: Kompletten Pfad (mit Dateinamen) zur Datei auf der lokalen Festplatte angeben, wohin gespeichert werden soll. Z.B.: "C:\web\smile.png" (unter Windows)

Bei dem Befehl URLDownloadToCacheFile_ wird das Problem genauso auftreten.

Weitere Infos zu den Befehlen unter
MSDN Microsoft: http://msdn2.microsoft.com/en-us/library/ms775122.aspx
amiga123
Beiträge: 88
Registriert: 17.02.2009 18:05

Re: Problem bei fortlaufenden Downloads von Webcam-Bildern

Beitrag von amiga123 »

Hi
Also mit der aktuellen Version von Purebasic funktioniert das Anscheind nicht mehr.
Bekomme immer den Inhalt vom Cache obwohl der gelöscht wurde.
Gruß Herb >_<
Pure Basic 4.60 Vollversion
http://www.Sundisp.de
Antworten