问题标签 [geckofx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3205 浏览

javascript - 如何使 Javascript 在 GeckoFX 中正常运行?

我已经开始使用 GeckoFX,但我遇到了 javascript:void(0) 的一个主要问题,它充当锚点,让 JS 弹出新窗口并加载 url。我如何告诉浏览器在 geckobrowser 组件内执行此操作?现在,当我点击它时..没有任何反应。

0 投票
4 回答
5397 浏览

c# - 如何在 GeckoFX 中获取 Dom 树

我开始玩 GeckoFX。不幸的是,我没有找到任何大的文档。我需要获取页面的 DOM 树。迭代每个元素并获取它的信息。有人可以帮帮我吗?

0 投票
4 回答
15561 浏览

c# - 运行多个 UI 线程

跳到底部的问题;这只是一些额外的信息

我正在使用一个组件(GeckoFX)来渲染一些网站,很好,但它只能在 Windows 窗体中使用;因为它必须绑定到可以绘制的 WinForms 对象。因为所有 WinForm 都在同一个线程中运行,所以我一次只能使用一个 GeckoFX 实例;所以我决定以 WinForm 的形式创建一个“工人阶级”,并在其中添加所有逻辑。该表单不需要与主表单进行通信。

现在我可以启动 10 个窗口,它们最终会工作,但是每个新表单都会在所有其他表单处理完所有 GeckoFX 事件之前等待,因为您不能在一个线程上使用多个实例。此外,浏览器必须在 UIThread 上。所以:

是否可以创建多个 UI 线程(每个表单一个)?

我见过有人这样做([编辑:删除“坏”链接]),但没有人让他的代码示例正常工作。让它工作的人最初使用某种形式的自定义消息泵来做这种事情,但我不知道如何实现这样的事情。

0 投票
3 回答
2573 浏览

c# - 如果在单独的线程中启动,为什么 GeckoFX Navigate() 请求不起作用?

为什么这行得通,

这不是吗?

0 投票
1 回答
110 浏览

c# - 资源中的目录树,无需提取...

我正在寻找一种方法来存储一个完整的目录,包括应用程序资源中的子目录,而不必提取它来使用它。

细节:

  • 我们想在我们的一个应用程序中使用GeckoFx(Gecko 作为 C# 组件)。
  • GeckoFX 需要 XUL-Runner 并且需要找到它的文件夹结构
  • 我们还有一些我不希望提取到客户电脑上的其他数据;至少不要像硬盘这样持久的东西......

将完整的目录放入资源中并不是什么大问题。压缩到一个文件并完成。

但是不将其写入磁盘以使用它是另一回事。

我非常不喜欢临时文件夹之类的东西。RAM驱动器之类的东西可能吗?RAM 的某些部分被安装了?像这样的东西是否甚至作为一个库存在,或者这只能通过设备驱动程序实现?

对此有什么想法吗?

提前致谢!

科莱戈特

0 投票
4 回答
3745 浏览

c# - C# 中的 Gecko 用法 (geckofx)

有些事情我没有找到使用 geckofx 的方法:

  1. 获取点击链接的 URL。

  2. 显示打印预览窗口。

geckofx 中是否存在此功能?如果没有,在使用 GeckoWebBrowser 显示 html 页面的 C# 项目中实现它的最佳方法是什么?

谢谢

0 投票
3 回答
1455 浏览

.net - 如何在具有动态加载程序集的 .NET WinForms 应用程序中使用 WebKit.NET 或 GeckoFX?

我正在开发一个 .NET WinForms 应用程序,该应用程序在运行时从单独的程序集中加载表单和其他 UI 元素。这很好用。

但是,我正在加载的一个程序集有一个使用 GeckoFX 或 WebKit.NET 嵌入 Web 浏览器控件的表单。当我尝试使用 Assembly.CreateInstance() 加载该程序集时,我收到一个异常,说它找不到我要加载的程序集,即使它在那里。一切都可以正常构建,并且具有正常构建/链接的单独测试应用程序可以与这些控件一起正常工作。

这里有什么想法吗?

谢谢,

马特

0 投票
1 回答
1509 浏览

c# - 在 GeckoWebBrowser 中检索选定的元素

我正在使用带有 C#.NET 的 GeckoFX 版本 1.9.1.0。我在表单中放置了一个 GeckoWebBrowser 组件 (geckoWebBrowser1) 和一个按钮 (button1),并将浏览器导航到一个页面。可以选择页面中的一些文本。此文本由一个或多个 DOM 元素组成。单击 button1 时,我想检索构成页面中所选文本的 DOM 元素,并为其中一个元素提供一个 id 并将这些 id 添加到列表中(在 C# 空间中)。我怎样才能做到这一点?

0 投票
2 回答
6905 浏览

c# - 代理用户名和 GeckoFX 通行证的帮助?

我正在尝试设置代理用户名和密码。我看到了这个帖子(http://geckofx.org/viewtopic.php?id=832),我认为这可能是用户名/密码的类似设置,例如:

Skybound.Gecko.GeckoPreferences.User["network.proxy.user"] = (user); Skybound.Gecko.GeckoPreferences.User["network.proxy.password"] = (password);

但是,到目前为止没有任何效果。任何人都可以帮忙吗?我真的很感激!!!

如果有帮助,我正在使用 VB.net。谢谢!!

0 投票
1 回答
4004 浏览

c# - Skybound Gecko 项目:试图读取或写入受保护的内存

我正在开始一个非常简单的项目——本质上是一个带有硬编码 URL 的 Web 浏览器,供公共终端使用。也就是说,如果 C# Web 浏览器控件没有让我想自杀,那就太简单了。

我决定使用 Skybound Gecko 浏览器,因为它似乎是唯一可行的选择。我在这个项目中经历了一些学习曲线,并解决了几个“Starter”错误(即在设置窗口句柄之前无法导航,以及找不到xpcom.dll时的错误),并已更正

现在,当我运行应用程序并在 Skybound Gecko 控件中打开 URL 时,我在 Program.cs 中收到错误消息。

另外,顺便说一句,我安装了 Stylizer 5,它正确地利用了 Skybound 项目,所以我假设它在我的代码或配置中。

任何帮助将不胜感激。

Program.cs(显示错误的地方)

相关代码

完整的错误和堆栈跟踪