Search code examples
vb.netcachingpreferencesbrowser-cachegeckofx

How to say GeckoFX to use old Cache-files instead of reloading them?


I'm using the GeckoFx v1.9.1.0 in VB and find a way to activate the cache with following code (just for to be sure it is activated - I know it is default):

Skybound.Gecko.GeckoPreferences.User.Item("browser.cache.disk.enable") = True
Skybound.Gecko.GeckoPreferences.User.Item("browser.cache.memory.enable") = True
Skybound.Gecko.GeckoPreferences.User.Item("Browser.cache.check doc frequency") = 3
Skybound.Gecko.GeckoPreferences.User.Item("Browser.cache.disk.capacity") = 50000
Skybound.Gecko.GeckoPreferences.User.Item("Browser.cache.memory.capacity()") = -1

I can see that the cache at "user/Geckofx/1.9/cache" is filled during the first load of a page, but on restart of my application EVERYTHING is reloaded (although cache is activated).

So I think there's missing another option to tell that nothing should be reloaded on each start.

Can you help me to find this option?

Thx Markus


Solution

  • Today - after months of working on this matter - I figured out that you need to shutdown the XPcom on a clean way, otherwise the "dirty flag" in the cache is set and the Gecko-Framework will clear the cache on startup.

    Thus, you need to add Gecko.Xpcom.Shutdown() to get a clean shutdown and the "dirty flag" is not set if you finish your program (e.g. on closing form or something similar).

    Now, I need to refactor my code, because I'm asking for still open windows and kill those windows without any chance of clean shutdown for Xpcom-framework. sigh

    Maybe other people will help this hint ...

    Regards, Markus