无法让Geckofx工作

时间:2014-07-08 15:18:40

标签: c# xulrunner gecko geckofx

如何在Visual Studio 2013中设置GeckoFX?

我从https://bitbucket.org/geckofx/geckofx-29.0/downloads下载了GeckoFS文件,并尝试将Geckofx-Core.dllGeckofx-Winforms.dll添加到c#中的组件中。这很有效,我在一个表单中创建了一个浏览器,但在运行它时出现了这个错误:

An unhandled exception of type 'System.DllNotFoundException' occurred in Geckofx-Core.dll

Additional information: Unable to load DLL 'xul': The specified module could not be found. (Exception from HRESULT: 0x8007007E)

我尝试将各种版本的xulrunner添加到项目中,例如版本22和29,但这并未删除错误。

我想做的就是创建一个简单的Windows窗体应用程序,使用最新的GeckoFx-29打开GeckoFX浏览器。

2 个答案:

答案 0 :(得分:2)

首先,您需要下载xulrunner 29或Firefox 29。

当path是已安装的xulrunner 29或Firefox 29的文件夹时,您需要致电Xpcom.Initialize(path)

例如,如果您将Firefox 29安装到" c:\ program Files x86 \ Mozilla Firefox \"

然后你会打电话给Xpcom.Initialize(@"c:\program Files x86\Mozilla Firefox\")

这告诉geckofx在哪里找到xul.dll。

然后您可以在winforms应用程序中使用GeckoWebBrowser控件。

注意 - 您还应确保您的主入口点具有[STAThread]属性。

答案 1 :(得分:0)

在我的情况下,由于我在xulrunner函数中初始化Form1_Load而导致此错误。我通过在xulrunner函数中初始化public Form1()来解决它。