Toon posts:

[win32/c] IWebbrowser2::Navigate - Geen history en cache

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik probeer een embedded webbrowser te gebruiken in een applicatie, maar deze mag de gegevens niet in de cache en history opslaan. Nou is die cache niet zo heel belangrijk, navNoReadFromCache en navNoWriteToCache zijn ook unsupported, maar de navNoHistory flag zou moeten werken.

Nou staat op MSDN bij navNoHistory:
Do not add the resource or file to the history list. The new page replaces the current page in the list.
Dan zou er dus maximaal één pagina in de history komen te staan neem ik aan. Hij plaatst ze er allemaal in, wat niet de bedoeling is.

Is er een andere manier om de history niet op te slaan en eventueel de cache ook?

C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/*
typedef enum BrowserNavConstants {
  navOpenInNewWindow = 0x1,
  navNoHistory = 0x2,
  navNoReadFromCache = 0x4,
  navNoWriteToCache = 0x8,
  navAllowAutosearch = 0x10,
  navBrowserBar = 0x20,
  navHyperlink = 0x40
} BrowserNavConstants; */

VARIANT navFlags;
CA_VariantSetInt (&navFlags, 0x2 | 0x4 | 0x8);

SHDocVw_IWebBrowser2Navigate2 (objHandle, NULL, vCStr, navFlags, \
CA_DEFAULT_VAL, CA_DEFAULT_VAL, CA_DEFAULT_VAL);



edit:
Ik ben erachter dat navNoHistory betrekking heeft op de GoBack en GoForward methoden. Waarschijnlijk moet ik het niet in de functie Navigate2 zoeken, maar waar dan?

[ Voor 9% gewijzigd door Verwijderd op 24-09-2003 15:02 ]


Verwijderd

Hier heb je misschien wat aan:

DeleteUrlCacheEntry
(items uit de cache verwijderen)

Verwijderd

Topicstarter
Ja en nee :)
Ik gebruik namelijk geen VC compiler, maar moet die van National Instruments gebruiken. Nou include ik ook libmysqld, waardoor ik niet de headerfiles van VC kan gebruiken, en dus ook geen wininet.h. Had dit misschien wat eerder moeten zeggen.

En daarbij komt ook dat ik een aantal pagina's automatisch laat refreshen, wat inhoudt dat ik continue weer die url uit de cache kan halen en ik dus een loop heb om de history schoon te houden, en op sommige momenten er iets in de cache staat omdat de loop het op dat moment nog niet verwijderd heeft.

Zou er bij de webbrowser control nou geen werkende flag op te geven zijn? En betekent unsupported dat ze gewoon geen info geven of dat de functie er wel is maar gewoonweg niet werkt?

Verwijderd

Topicstarter
Afbeeldingslocatie: http://web.mit.edu/tetazoo/www/img/calvin/kick.gif

Niemand een idee om het webbrowser control niet te laten cachen en history bijhouden?