在VB.NET项目中使用GeckoWebBrowser(v45.0.34.0)

时间:2018-03-21 13:17:23

标签: vb.net gecko geckofx

我正试图让GeckoWebBrowser(版本45.0.34.0)控件在我的 VB.NET 项目中运行而没有运气!!!

以下是我遵循的步骤......

1。我右键单击项目进入解决方案资源管理器列表,然后管理NuGet包

2. 我找到并安装 Geckofx45。

3. 然后我进入项目属性,进入编译标签,然后将目标CPU 更改为的 86

4. 重建我的项目。

5. 然后我通过从{{选择 Geckofx-Winforms.dll 文件将GeckoWebBrowser控件添加到我的工具箱中1}}文件夹。

6。我在表单中添加了...\packages\Geckofx45.45.0.34\lib\net45控件,只是为了测试,我GeckoWebBrowser进入我的表单{{1}事件。

7。开始我的应用程序,我什么都没得到!

我想念的任何一步还是什么?

2 个答案:

答案 0 :(得分:3)

在互联网上进行了一项耗费精力的研究之后,我设法让它发挥作用!以下是任何想要将GeckoWebBrowser用于他/她的VB.NET项目的人的步骤。

1。创建一个新的VB.NET项目或只打开一个现有项目。

2。转到菜单项目,然后点击管理NuGet包

3. 点击浏览标签,然后搜索 Geckofx45

4. 选择带有说明的库,允许在C#应用程序中嵌入gecko ,然后点击安装按钮。

5. 关闭 NuGet 窗口,转到项目的属性

6。进入应用标签,点击查看应用事件按钮。

7。删除其中的所有内容并粘贴此部分代码并保存。

Imports Gecko
Imports System.IO
Namespace My
    ' The following events are available for MyApplication:
    '
    ' Startup: Raised when the application starts, before the startup form is created.
    ' Shutdown: Raised after all application forms are closed.  This event is not raised if the application terminates abnormally.
    ' UnhandledException: Raised if the application encounters an unhandled exception.
    ' StartupNextInstance: Raised when launching a single-instance application and the application is already active.
    ' NetworkAvailabilityChanged: Raised when the network connection is connected or disconnected.
    Partial Friend Class MyApplication
        Protected Overrides Function OnStartup(ByVal eventArgs As Microsoft.VisualBasic.ApplicationServices.StartupEventArgs) As Boolean
            Dim ProfileDirectory As String = My.Application.Info.DirectoryPath & "\Firefox\Profile"
            If Not Directory.Exists(ProfileDirectory) Then
                Directory.CreateDirectory(ProfileDirectory)
            End If
            Xpcom.ProfileDirectory = ProfileDirectory
            Gecko.Xpcom.Initialize("Firefox")
            Return True
        End Function
    End Class
End Namespace

8。现在,返回您的项目属性,点击编译标签,然后设置目标CPU 值为 x86

9. 建立或重建您的项目。

10a。要将GeckoWebBrowser控件添加到工具箱,请首先创建一个新的标签,然后命名为 GeckoFX 45 或者你喜欢什么。

10b。右键单击它并点击选择项目

10b。进入 .NET Framework Componetns ,然后点击浏览按钮。

10c。your-project-folder\packages\Geckofx45.45.0.34\lib\net45\中找到 Geckofx-Winforms.dll ,然后点击打开按钮。

10d。确保选中GeckoWebBrowser,然后点击确定

答案 1 :(得分:0)

这里定位x64的变体大约为时已晚:

第3步和第4步:嵌入GeckoFx 60

第7步:将OnStartup函数替换为:

Protected Overrides Function OnStartup(ByVal eventArgs As ApplicationServices.StartupEventArgs) As Boolean

        Dim m_StartupPath As String = System.Windows.Forms.Application.StartupPath
        Dim m_ProfileDirectory As String = System.IO.Path.Combine(m_StartupPath, "Firefox", "Profile")
        If Not New System.IO.DirectoryInfo(m_ProfileDirectory).Exists Then System.IO.Directory.CreateDirectory(m_ProfileDirectory)
        Xpcom.ProfileDirectory = m_ProfileDirectory

        Dim m_BinDirectory As String = System.IO.Path.Combine(m_StartupPath, "Firefox64")
        Xpcom.Initialize(m_BinDirectory)

        Return True

    End Function

第8步:将项目定位到x64

可以省略步骤10a至10d。