Caching und das WebBrowser-Steuerelement in .Net

Bin ich mit dem WebBrowser-Steuerelement in .Net ausführen einige 3rd-party-affiliate-marketing-Konvertierungen.

Habe ich eine queue-Tabelle in einer Datenbank mit allen scripts/images ausführen. Ich Schleife durch alle diese in einer WinForms app mit dem WebBrowser-Steuerelement. Nachdem ich ausgeführt habe, ein Skript/Bild, das ich über den WebBrowser zu Steuern, setzen Sie ihn auf null, und erneuert es mit einem neuen WebBrowser-control-Instanz.

Betrachten Sie diese URL ein: http://renderserver/RenderScript.aspx?id=1

RenderScript.aspx zeigt ein Bild mit einer URL, z.B.: http://3rdparty/img.ashx?id=9343

Ich verwenden Sie Fiddler, um zu sehen, alle Anfragen und Antworten, und wenn dieselbe URL zweimal ausgeführt wird, verwendet es eine Art cache. Das cache vorhanden ist, unter dem WebBrowser-Steuerelement selbst.

Diesen cache bedeutet, dass der img.ashx nicht genannt.

Ich habe versucht, mithilfe von Internet Explorer anfordern der URL: http://renderserver/RenderScript.aspx?id=1 und drücken Sie die Taste F5. Dann ist es angefordert perfekt.

Aber wenn ich auf die Adressleiste und trifft Sie die EINGABETASTE, um zu navigieren, um die gleiche URL wieder - es ist nicht angefordert. Wenn ich mit Firefox wird die Seite anfordern und Bild jedes mal, egal ob ich F5 oder navigieren über die Adressleiste.

Fand ich einige Win32-API-Aufrufe ( http://support.microsoft.com/kb/326201 ), die in der Lage war, den cache zu löschen. Es funktionierte auf meiner lokalen Maschine. Dann die app wurde bereitgestellt, um einen server mit Windows Server 2003 Standard x64 (meine eigene Maschine ist Vista x86).

Und nun der API-Aufrufe den cache zu löschen, nicht funktioniert.

Irgendwelche Ideen auf, warum die API-Aufrufe, funktioniert nicht auf Windows Server, funktioniert aber auch auf Vista? Beide Maschinen laufen IE8.

InformationsquelleAutor MartinHN | 2009-08-14
Schreibe einen Kommentar