问题标签 [xpcom]

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 投票
2 回答
725 浏览

firefox - 如何在 Mozilla 加载和解析 HTML 之前对其进行预处理?

我需要一种在 Mozilla 实际加载和解析 HTML 之前处理它的方法。是否有任何内容监听器可以在我的 Firefox 扩展中使用?

0 投票
1 回答
469 浏览

firefox - 从 XPCOM 组件获取 firefox chrome-window

我正在编写一个 XPCOM 对象,它希望访问主 firefox 窗口和打开的 tabBrowsers。我应该使用什么界面?

0 投票
2 回答
386 浏览

linux - 处理来自 Firefox 和 Google Chrome 的故障转储

我正在为 Firefox 和 Google Chrome(Windows、Linux 和 Mac)开发一个跨平台的 NPAPI+XPCOM 扩展。我想知道是否有人可以启发我处理组件崩溃的最佳实践。

据我了解,目前 Mozilla 的 Crash Reporter 向 Mozilla Dev 提交创建的小型转储和崩溃报告。我尝试将 SIGSEV 阻止到 Firefox 并在插件代码中创建自己的核心。尽管这很好用,但我确定我不应该那样做。

而且 Google Chrome 甚至似乎都没有创建任何核心转储!有什么建议么?

0 投票
2 回答
282 浏览

c++ - 如何在 XPCOM 中处理文件

我正在编写一个 Mozilla 组件来获取页面中的所有链接,并使用 XPCOM 和 C++ 将它们写入文件。我将所有链接放入这样的数组中:

但现在我怎样才能让他们写入文件。我真的不知道如何在 XPCOM 中使用文件。有人可以给我一些提示或教程链接吗?

0 投票
1 回答
2628 浏览

c# - C# 与 XPCOM 的互操作

在问我的问题之前,我应该承认我对 .NET 互操作的了解很少,所以我意识到我可能会犯一个新手错误。

我正在使用GeckoFx库创建一个包含嵌入式 Gecko (Firefox) 浏览器实例的 C# 应用程序。该应用程序使用原始形式的 GeckoFx 运行良好,但我需要使用 MozillansIDOMXPathEvaluator界面扩展它以支持 XPath 查询。

GeckoFx 代码库包括许多公开和使用底层托管 Gecko 接口的示例,我遵循相同的代码模式来公开几个新接口:

随着新接口的暴露,我尝试nsIDOMXPathEvaluator在加载的 DOM 的上下文中评估 XPath 表达式:

尽管前三个变量已正确填充,但调用Evaluate失败并出现异常“尝试读取或写入受保护的内存。”。我倾向于认为问题在于我的代码编组字符串值的方式,因为我在尝试使用表达式参数的编组类型时看到了不同的异常消息。

似乎我不是唯一遇到此问题的人,如本论坛帖子所示,但我无法理解我的实现与 GeckoFx 库中​​的许多其他工作示例有何不同。

任何想法将不胜感激。

谢谢,蒂姆。

0 投票
2 回答
1698 浏览

javascript - 从 JS XPCOM 调用 dll 函数

我想知道XPCOM JS是否可以调用外部dll函数?

我有一个公开某些功能的 dll。我希望我的 XPCOM JS 函数能够调用 dll 函数。是否可以?

0 投票
1 回答
1131 浏览

com - 什么是 XPCOM?XPCOM VS COM?

我无法理解 XPCOM。它与 COM 有何不同?是什么让它跨平台?

它是一个带有一组库的框架,你可以用它来完成一些工作吗?

另外,组件对象模型是否意味着每个功能都在组件中实现,因此我们可以在不知道详细实现的情况下使用它?

你能帮我理解这个吗?谢谢,陈。

0 投票
1 回答
458 浏览

firefox - Firefox 扩展:自定义自动完成

我找到了 google 自动完成的代码示例,并为 Bing 和其他搜索提供程序创建了其他组件,但我无法切换自动完成。我使用以下代码进行更改autocompletesearch,但它不起作用。仅当我在 XUL 中定义自动完成搜索属性时,组件才有效。

0 投票
2 回答
439 浏览

firefox - 火狐扩展开发firefox4

因此,我一直在努力更新旧扩展以供 FF4 和 Gecko 2 使用,但我遇到了一些问题,我收到一个错误,提示组件的 classID 丢失或不正确......

有没有其他人遇到过类似的问题或知道如何解决这个问题?

当为此在原型上调用 generateNSGetFactory 时,它会在 FF4 的错误控制台中给出一个错误,抱怨 classID。我很确定没有其他东西在使用相同的 GUID,所以我看不到问题所在。

0 投票
1 回答
318 浏览

delphi - Gecko NSModule:ContractIDEntry “nsID const *”?

我创建了一个 FireFox 插件,但注意到它在 FireFox 3.6 上停止工作显然,NSGetModule 正在被 NSModule 结构取代,所以我必须适应。我正在使用 Delphi 对我的产品进行编码,因此我必须将新代码移植到 Object Pascal。

如果我查看此代码: http: //mxr.mozilla.org/mozilla-central/source/xpcom/components/Module.h

我注意到 ContractIDEntry 结构的“cid”属性定义为nsID const *

这是否意味着结构中有一个指向 nsID 变量的指针,或者 nsID 值本身就是结构的一部分?