问题标签 [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 投票
1 回答
344 浏览

java - 如何在 mozswing 中捕获请求?

我想在用户单击链接或提交表单时捕获 mozswing 发出的请求,以便永远不会建立套接字连接,我可以“自己”回答请求。

0 投票
1 回答
1461 浏览

javascript - netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); 时避免对话框 叫做

嗨,我必须创建.write,使用 XPCom 在 javascript 中读取本地文件。为此,我在 javascript 的开头包含了以下行。

但是当上面的脚本执行时,会出现一个对话框说

但我不希望出现对话框。我怎样才能避免它?谢谢。

0 投票
1 回答
164 浏览

c++ - 如何从 XPCOM 对象连接到 Songbird 插件中的 GStreamer 插件?

我正在编写一个 Songbird 插件,它包含三个部分:XUL (javascript)、一个 GStreamer 过滤器和一个 XPCOM 插件。

我有兴趣从我的 XPCOM 组件访问 GStreamer 层。如果有人知道如何做到这一点的任何资源,我将不胜感激。

具体来说,我需要有关从我的插件中访问 GStreamer 功能的文档或示例(从我的 XPCOM 组件 (C++) 构建 GST 管道并通过它运行文件。

谢谢 :)

0 投票
2 回答
678 浏览

javascript - Firefox 扩展如何检测加载页面的内容类型?

因为即使我查看 css 或 js 文件也会触发我的扩展的页面加载,我想添加另一个检查,仅当当前页面的内容类型为 text/html 时才会触发我的扩展。

contentTypeIsHtml() 应该做什么?

0 投票
1 回答
176 浏览

javascript - 使用 nsIZipWriter 或其他将字符串压缩为字符串?

我需要能够获取一个 javascript 字符串,使用任何快速且可用的方式对其进行压缩,然后取回一个二进制字符串/blob。

背景:

我正在开发的扩展需要将各种大型内容发送到我的服务器。它通过动态创建表单、向表单添加字段并发布它来方便地做到这一点。其中一些字段对于多次使用来说带宽太大了。我希望能够在添加它们之前压缩它们,然后如果字符导致消息中出现问题,则可能会对它们进行 base64 处理。有任何想法吗?

我可以将 nsiZipWriter 与磁盘上的临时文件一起使用,但这很丑陋并且可能很慢。

0 投票
2 回答
190 浏览

javascript - XPCOM 的所有用户文档在哪里?

Google 找不到太多 XPCOM 的用户文档。当然,它可以找到无数关于用 C++ 制作新的 XPCOM 组件的参考资料,但这对于任何需要知道如何使用JavaScript中的现有组件的人来说完全没用。这是一个巨大的差距,偶尔会被创建实例和调用方法的琐碎示例所触及。没有人对组件有更深入的了解吗?使用具有多个接口的组件?实现侦听器来处理异步行为?

“使用 Mozilla 进行快速应用程序开发”没有任何帮助(广度很大,但深度很小)。对已失效的 XULPlanet 存在的参差不齐的引用重定向到了 Mozilla 开发中心,但这毫无用处。Mozilla 开发中心的文章指向 XULPlanet,这是一个笑话。

这是一群开源倡导者可以召集来促进野兽扩展的最好的吗?

0 投票
1 回答
149 浏览

windows - 如何在 Windows 上注册 nsIModule DLL

不久前,我创建了一个带有 nsIModule(和 nsIProtocolHandler)实现的 Windows 库。我最近才开始调试它,但 FireFox 不再运行我的库。我尝试使用regxpcom和删除xpti.datand再次注册我的模块compreg.dat,但我的合同 ID 没有被列出。如果我尝试调试 firefox 或 regxpcom,看起来我的 DLL 没有被加载(他们曾经调用NSGetModule我的 DLL)。

注册过程有什么变化吗?我需要提供.xpt文件吗?以前不需要,我不需要/使用我自己的任何接口,所以如果我这样做,无论如何它都是一个空的类型库......

http://xxm.svn.sourceforge.net/viewvc/xxm/trunk/Delphi/gecko/

0 投票
1 回答
599 浏览

firefox - 如何在 FF4 的 XPCOM 组件中收听 profile-after-change

这篇博文提到 XPCOM 组件将不再能够观察“应用程序启动”通知,他们现在必须收听“更改后的配置文件”通知。

但是,我的更改似乎不起作用;知道我做错了什么吗?

0 投票
1 回答
105 浏览

firefox - 关于将我自己的控制台实现为 XPCOM 的建议

我想为我的扩展使用我自己的控制台,在那里我将打印出各种调试信息。我以为我会这样做

window.open("chrome://myextension/content/console.xul"..

然后打印到该窗口的文本框中。你已经看到这里有问题了吗?=)

现在我有一个小问题,window.open 立即返回,如果我继续并立即使用 myconsole.log("boo") 函数,那么新打开的窗口中的内容还没有加载,我会得到错误。这意味着我必须等待控制台完成加载才能打印到它。正确的做法是什么?我可以在 log 方法中使用 nsITimer 或 thread.sleep 来继续检查它是否已经加载,但我不喜欢这样。我也不知道如何正确使用 window.onload 事件,因为我看到的唯一方法就是像 window.onload = function() { all of my extension code.. } 这样我也不喜欢。

我希望它可以像这样随时随地使用

有什么建议吗?谢谢你的耐心=)

0 投票
2 回答
520 浏览

firefox-addon - xpcom/jetpack 观察所有文件加载

我编写了一个基于 Mozilla Jetpack 的插件,它必须在加载文档时运行。对于“顶级文档”,这主要使用以下代码(OserverService = require('observer-service')):

但是,当用户使用中键或(更重要的是!)为框架打开新选项卡时,不会调用回调。即使是这个话题,我也只是通过阅读另一个扩展的源代码而不是通过文档获得的。

那么如何注册一个真正在每次加载文档时调用的回调呢?

编辑:这似乎做我想要的:

部分从这里得到:https ://developer.mozilla.org/en/XUL_School/Intercepting_Page_Loads