2012-11-22 32 views
5

Pomoc! Używam GeckoFx-Windows-10.0-0.6 dla przeglądarki i xulrunner-10.0.en-US.win32. (Visual Studio 2010 C#) wszystko działa dobrze. Ale muszę wyczyścić całą historię, jak w Firefox: Narzędzia >> Opcje >> prywatnościgecko wyczyść pamięć podręczną historia i ciasteczka

znajdę sposób wyraźny ciastko nad Gecko.CookieManager.RemoveAll();

Jak wyczyścić pamięć podręczną, pliki tymczasowe i historię?

Po inicjalizacji Gecko.Xpcom nie mogę wyczyścić folderu "Gecko.Xpcom.ProfileDirectory" (gdzie pamięć podręczna i plik cookie) z oczywistych powodów. Gecko.Xpcom.Shutdown() nie pomaga


znalazłem sposób, aby wyczyścić pliki cookie poprzez javascript:

var cookieManager = Components.classes["@mozilla.org/cookiemanager;1"].getService(Components.interfa‌​ces.nsICookieManager); cookieManager.removeAll();

Jak słusznie nazywają to JS w C#?

Odpowiedz

4

Aby wyczyścić ciasteczka będą potrzebne do kwerendy interfejs tak:

if (MessageBox.Show("Do you want to delete cookies?", "About to delete all cookies", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes) 
    { 
     nsICookieManager CookieMan; 
     CookieMan = Xpcom.GetService<nsICookieManager>("@mozilla.org/cookiemanager;1"); 
     CookieMan = Xpcom.QueryInterface<nsICookieManager>(CookieMan); 
     CookieMan.RemoveAll(); 
    } 

Dostęp do pamięci podręcznej jest zabroniony podczas wykonywania brobably przyczyn bezpieczeństwa lub takie. To znaczy, że musisz znaleźć sposób na usunięcie tych folderów po zamknięciu programu itp. utwórz kolejną aplikację do jej obsługi.

1

Na co jej wartości, a ponieważ wyglądał trochę czasu na to, na GeckoFX 29 przynajmniej historia według takiego samego schematu:

nsIBrowserHistory historyMan = Xpcom.GetService<nsIBrowserHistory>(Gecko.Contracts.NavHistoryService); 
historyMan = Xpcom.QueryInterface<nsIBrowserHistory>(historyMan); 
historyMan.RemoveAllPages(); 

Dla Cache, nie będąc pewny jest poprawny sposób:

// https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XPCOM/Reference/Interface/imgICache 
Gecko.Cache.ImageCache.ClearCache(true); 
Gecko.Cache.ImageCache.ClearCache(false); 
// Defaults to all devices(0) - https://bitbucket.org/geckofx/geckofx-9.0/issue/7/idl-translation-bug-for-enums 
Gecko.Cache.CacheService.Clear(new CacheStoragePolicy()); 
Powiązane problemy