我很傻眼为什么默认情况下没有启用它,因为它毕竟是一个Web浏览器控件。
我尝试使用写访问权限设置自定义配置文件路径到现有目录:
var path = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "xulrunner");
Gecko.Xpcom.ProfileDirectory = System.IO.Path.Combine( Directory.GetCurrentDirectory(), "webcache");
Gecko.Xpcom.Initialize(path);
我也试过设定各种偏好组合,即
Gecko.GeckoPreferences.User.SetBoolPref("browser.cache.disk.enable",true);
Gecko.GeckoPreferences.User.SetIntPref("Browser.cache.disk.capacity", 50000);
但是,它总是在应用程序重启时再次加载Web资产!
有没有人知道正确的配置让geckoFX或xulRunner在启动时查看最后一个缓存?
提前致谢!
答案 0 :(得分:0)
好的,所以我已将此错误缩小到 geckofx-33.0版本。
降级为 geckofx-31.0-01或更低版本解决了我的问题,缓存仍然存在(在 / cache2 文件夹中,自动创建)。
我测试了以下组合(操作系统:Windows):
GeckoFx 29.0-015.zip with xulRunner 29.0.1.en-US.win32.zip:磁盘缓存工作!
GeckoFx 31.0-01.zip with xulRunner 31.0.en-US.win32.zip:磁盘缓存工作!
- GeckoFx 33.0-02.zip with xulRunner 33.0.2.en-US.win32.zip:磁盘缓存 FAILS !
我使用的是上面的33版本(因为它是最新版本!),因此无法使磁盘缓存工作。我绝对认为这是一个错误,因为它每次都可以重现。我不知道这个错误是在geckoFx还是xulRunner运行时,但我会把它留给开发人员的大脑 - 信任来修复。我相信缓存API在v33中已更改。
所以,现在我想我会回到第31版并等待修复。