【问题标题】:Writing a Firefox XPCOM plug-in with a native window interface? (like ActiveX control)编写带有原生窗口界面的 Firefox XPCOM 插件? (如 ActiveX 控件)
【发布时间】:2009-04-22 17:34:28
【问题描述】:

我有一个在 Internet Explorer 和 ActiveX 控件测试容器程序中运行良好的 ActiveX 控件。控件的实际行为分为两部分,其中一部分是与 OLE 主机接口的 ATL gunk,另一部分是真正的肉,它只接收窗口附加、调整大小、绘图和鼠标/键盘的回调事件。

现在,我想为 Firefox 插件编写 ATL gunk 的等价物(最好是在同一个二进制文件中,因此我不需要链接两个二进制文件,但我可以在这里灵活一些)。我已经下载并使用 Gecko SDK 构建了一个 XPCOM 组件,这似乎可行,但我不知道要实现哪些接口以使该组件可用作 Firefox 中的嵌入式本机 UI 组件。这与 Flash 播放器插件、PDF 查看器插件、QuickTime 播放器插件等的需求类似——javascript 和 XUL 还不够。

我在网上找了一些例子,但我能找到的唯一例子是基于看似古老的 NS_PluginInitialize() / NS_NewPluginInstance() 接口,它不是 XPCOM(但有其他名称?)。

有没有办法通过XPCOM实现同样的事情?如果是这样,怎么做?是否存在任何关于如何执行此操作的概述文档(不仅仅是界面成员列表)?

【问题讨论】:

    标签: firefox mozilla xpcom gecko windowed


    【解决方案1】:

    啊,答案刚刚在另一个网络搜索中弹出。好吧,至少有一段绳子的开头,当拉得足够长时,可能会回答这个问题。

    https://developer.mozilla.org/en/Gecko_Plugin_API_Reference/Plug-in_Basics#Windowed_and_Windowless_Plug-ins

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-03
      • 1970-01-01
      • 2010-12-04
      • 1970-01-01
      • 2015-11-08
      • 1970-01-01
      相关资源
      最近更新 更多