【问题标题】:Using GeckoWebBrowser (v45.0.34.0) in a VB.NET project在 VB.NET 项目中使用 GeckoWebBrowser (v45.0.34.0)
【发布时间】:2018-03-21 13:17:23
【问题描述】:

我正在尝试将GeckoWebBrowser(版本 45.0.34.0)控件用于我的 VB.NET 项目,但没有成功!!!

这是我遵循的步骤...

1.我确实右键单击我的项目进入Solution Explorer列表,然后Manage NuGet Packages

2. 我找到并安装 Geckofx45。

3.然后我进入我的项目属性,进入编译选项卡并将目标CPU更改为x86

4.重建我的项目。

5. 然后我通过从...\packages\Geckofx45.45.0.34\lib\net45 文件夹中选择Geckofx-Winforms.dll 文件将GeckoWebBrowser 控件添加到我的Toolbox 中.

6. 我将GeckoWebBrowser 控件添加到我的表单 中,只是为了测试,我将GeckoWebBrowser1.Navigate("www.google.com") 添加到我的表单的Load 事件中。

7.启动我的应用程序,但我什么也得不到!!!

有什么我遗漏的步骤吗?

【问题讨论】:

  • 出于某种原因,社区希望以“太宽泛”来结束这个问题。老实说,我看不出它有什么太宽泛的地方。他解释了他所采取的确切步骤,并且(可能有点模糊,但仍然如此)结果是什么都没有发生。怎么“太宽泛”了?
  • 我看了一眼GeckoFX wiki,发现他们在初始化网络浏览器之前调用了Xpcom.Initialize("Firefox")。如果您在导航到 Form.Load 事件之前放置它会发生什么?如果还是不行,还可以尝试从表单中删除网络浏览器,并在 Xpcom 调用后通过代码创建它。
  • 我找到了我的朋友文森特的解决方案!!!现在我正在逐步编写解决方案,供那些想要在 VB.NET 中使用 GeckoWebBrowser 的人使用。 :)
  • @VisualVincent:请不要关闭这个问题,我的朋友,我来回答了!!!
  • 我不是想关闭它的人,但其他人...

标签: vb.net gecko geckofx


【解决方案1】:

在互联网上进行了令人筋疲力尽的(!!!)研究后,我设法让它工作了!!!以下是任何想要在他/她的 VB.NET 项目中使用 GeckoWebBrowser 的人的步骤。

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

2.进入菜单Project并点击Manage NuGet Packages

3.点击浏览标签并搜索Geckofx45

4.选择带有描述的一个:允许在 C# 应用程序中嵌入壁虎的库,然后点击安装按钮。

5. 关闭 NuGet 窗口并转到您项目的 Properties

6.进入Application标签,点击View Application Events按钮。

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. 现在,回到你的项目Properties,点击Compile标签并设置Target CPU 值为 x86

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

10a. 要将GeckoWebBrowser 控件添加到您的工具箱,首先创建一个新的Tab,然后将其命名为GeckoFX 45 或任何你喜欢的。

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

10b.进入.NET Framework Componetns并点击Browse按钮。

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

10d.确保选中GeckoWebBrowser,然后单击确定

【讨论】:

  • 很高兴您找到了解决方案! :)
  • 现在我正在尝试看看是否可以让它也适用于 x64,我会更新我的答案!!!
  • 嗨。我在添加到工具栏时遇到问题。总是给我一个错误,,没有组件......”。也许你能提出一个解决方案吗?谢谢
  • @RobertNegreanu:这意味着你停留在步骤 10a 上?
  • 卡在 10c :) 也许我会尝试使用旧版本
猜你喜欢
  • 1970-01-01
  • 2011-12-02
  • 2015-03-07
  • 1970-01-01
  • 2011-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多