Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IE Cache Eintrag löschen (https://www.delphipraxis.net/99927-ie-cache-eintrag-loeschen.html)

dtrace 19. Sep 2007 17:29


IE Cache Eintrag löschen
 
Hallo zusammen,
ich benutze die TWebbrowser Komponente. Wenn ich mit dieser Komponente eine URL aufrufe, wie kann ich dann diese Url aus dem Cache wieder vollständig löschen ohne den vollständigen Cache zu löschen.
Es geht darum, dass ich mit meinem Browser eine private Seite aufrufen möchte, von der keiner etwas mitbekommen soll..

Ich weiß, dass ich irgendwie einen Eintrag setzen muss aber genau verstanden habe ich das nicht.

dtrace 19. Sep 2007 17:38

Re: IE Cache Eintrag löschen
 
Niemand eine Idee?

Mackhack 19. Sep 2007 17:43

Re: IE Cache Eintrag löschen
 
Pushing ist erst nach 24h erlaubt laut den Regeln des Forums.

Gib den Leuten etwas Zeit da hier jeder seine Freizeit opfert!

shmia 19. Sep 2007 18:42

Re: IE Cache Eintrag löschen
 
Du musst dem IE (TWebBrowser) in der Methode Navigate sagen, dass er die URL gar nicht erst in den Cache aufnehmen soll.
Dann braucht auch nichts gelöscht werden.
Delphi-Quellcode:
var
  BrowserFlags : olevariant;
  MyTargetFrameName : olevariant;
  MyPostaData : olevariant;
  MyHeaders : olevariant;
begin
{ Flags:
Constant            Value Meaning
NavOpenInNewWindow  $01 Open the resource or file in a new window.
NavNoHistory        $02 Do not add the resource or file to the history list. The new page replaces the current page in the list.
NavNoReadFromCache  $04 Do not read from the disk cache for this navigation.
NavNoWriteToCache   $08 Do not write the results of this navigation to the disk cache.
NavAllowAutosearch  $10 If the navigation fails, the Web browser attempts to navigate common root domains (.com, .org, and so on). If this still fails, the URL is passed to a search engine.
}
  BrowserFlags := $02 or $08;
  MyTargetFrameName := null;
  MyPostaData := null;
  MyHeaders := null;
  Webbrowser1.Navigate(EdtURL.text, BrowserFlags,MyTargetFrameName,MyPostaData,MyHeaders);
  StatusBar1.SimpleText := '';
  WaitForBrowser(WebBrowser1);
end;

dtrace 19. Sep 2007 19:29

Re: IE Cache Eintrag löschen
 
Vielen dank...nur wie kann ich testen ob das funktioniert...es kommt zwar kein Fehler aber wie sieht es aus, wenn ich durch deine genannte Routine eine Site besuche. Innerhalb dieser Site ist ein Link. Wird dann ein Cache geschrieben, wenn ich den Link folge?

Dennis

s-off 19. Sep 2007 20:18

Re: IE Cache Eintrag löschen
 
Zitat:

Zitat von dtrace
Innerhalb dieser Site ist ein Link. Wird dann ein Cache geschrieben, wenn ich den Link folge?

Nein, denn das, was shmia geschrieben hat, musst Du in die OnBeforeNavigate-Methode Deines Browsers schreiben.
Zitat:

Zitat von dtrace
Vielen dank...nur wie kann ich testen ob das funktioniert

In dem Du den Cache leerst, eine Seite ansteuerst, und Dir anschliessend den Cache anschaust.

Christian Seehase 19. Sep 2007 20:44

Re: IE Cache Eintrag löschen
 
Moin Dennis,

vielleicht helfen auch diese Funktionen weiter:

MSDN-Library durchsuchenDeleteUrlCacheEntry / MSDN-Library durchsuchenFindFirstUrlCacheEntry

und zugehörige.
Teilweise wirst Du auch hier Informationen zu den Funktionen finden.

dtrace 19. Sep 2007 21:17

Re: IE Cache Eintrag löschen
 
Zitat:

Zitat von s-off
Zitat:

Zitat von dtrace
Innerhalb dieser Site ist ein Link. Wird dann ein Cache geschrieben, wenn ich den Link folge?

Nein, denn das, was shmia geschrieben hat, musst Du in die OnBeforeNavigate-Methode Deines Browsers schreiben.
Zitat:

Zitat von dtrace
Vielen dank...nur wie kann ich testen ob das funktioniert

In dem Du den Cache leerst, eine Seite ansteuerst, und Dir anschliessend den Cache anschaust.


ich habe das jetzt so gemacht, aber keine Chance. Der Cache wird trotzdem geschrieben. Testet das mal bei euch...ich komme nicht weiter :(

dtrace 20. Sep 2007 13:44

Re: IE Cache Eintrag löschen
 
Niemand eine Idee?

dtrace 21. Sep 2007 13:52

Re: IE Cache Eintrag löschen
 
hmmm... das mit dem DeleteUrlCacheEntry habe ich nun versucht, und es funktioniert auch "halb".
Das Problem was ich habe ist nun, dass wenn ich eine Seite besuche z.B. www.aol.de , dann werden die einzelnen Grafiken etc. in den Cache geschrieben. Wenn ich jetzt aber sage, DeleteUrlCacheEntry(PansiChar('htt://www.aol.de')) dann werden die einzelnen Dateien die von AOL kommen nicht gelöscht. Wie finde ich heraus, welche Dateienin den Cache geschrieben werden? Es muss noch eine einfache Möglichkeit geben, den Cache zu leeren, die durch meinen Browser verursacht wurden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:34 Uhr.
Seite 1 von 2  1 2      

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