如何在GeckoFX Windows窗体Web浏览器中获取adblock?

时间:2018-10-08 22:07:50

标签: c# geckofx adblock

我正在使用GeckoFX45在Windows Forms中运行浏览器。我希望能够添加一个adblocker(uBlock或AdBlock Plus)。

大多数adblocker用于IE,GeckoPreferences.Default("extensions.blocklist.enabled") = False;给我一个错误。

是否可以在GeckoFX浏览器中实现Adblock?

2 个答案:

答案 0 :(得分:0)

尝试将Firefox扩展添加到GeckoFX

首先,使用

添加部署扩展的位置。
Xpcom.ComponentRegistrar.AutoRegister():

void RegisterExtensionDir(string dir)
{
        Console.WriteLine("Registering binary extension directory:  " + dir);
        var chromeDir = (nsIFile)Xpcom.NewNativeLocalFile(dir);
        var chromeFile = chromeDir.Clone();
        chromeFile.Append(new nsAString("chrome.manifest"));
        Xpcom.ComponentRegistrar.AutoRegister(chromeFile);
}
  

第二,请勿在扩展程序的chrome.manifest中使用ABI标志。所以   代替

binary-component components/GeckoScraper.dll  ABI=WINNT_x86-msvc
  

使用

binary-component components/GeckoScraper.dll

答案 1 :(得分:0)

遗憾的是,由于Firefox扩展主要基于Firefox的界面和工作原理,而不仅仅是Gecko界面,我认为目前根本无法安装扩展或.XPI文件。

因此,为了在不使用扩展程序的情况下执行此操作,您可能必须自己编写一个here尝试编写的adblocker。

否则,祝你好运!我遇到过类似的问题,并希望编写自己的解决方案。