如何为 IE、Firefox 和 Chrome 编写网络浏览器插件

发布于 2024-11-07 13:54:32 字数 296 浏览 0 评论 0原文

我需要编写一个支持 IE 7+、Firefox 3+、Chrome 的网络浏览器插件。

该插件必须能够将 DirectX 对象放置在网页中。

我没有使用插件的经验。

我做了一些调查并决定使用 FireBreath 来实现。

  1. 我无法理解如何将图像放置在插件区域内。有人可以提供示例吗?

  2. 如何在那里放置 DirectX 对象?有什么例子吗?

  3. 如何触发自动安装?

谢谢!

莎拉

I need to write a web browser plugin that supports IE 7+, Firefox 3+, Chrome.

This plugin has to be able to place a DirectX object in a web page.

I have no experience with plugins.

I did some investigating and decided to do it with FireBreath.

  1. I couldn't understand the way to place an image inside the plugin area. Can someone provide example?

  2. How do I place a DirectX object there? Any example?

  3. How do I trigger automatic installation?

Thanks!

Sara

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

嗯,有两个问题你必须解决。在这一点上,理解插件确实更容易,因为 FireBreath 可以帮助您。天哪,无论是谁写的,一定很聪明! (好吧,是我,所以我不得不这么说)

首先要理解的是,您不能将“DirectX 对象”“放置”在任何地方。您不会将图像“放置”在插件内。相反,您可以像在任何其他 Windows 应用程序中一样将图像绘制到窗口中。

您可能想提取我对另一个类似问题的回答:浏览器插件中的Directx控件

在 Windows 上的普通插件实例(“窗口”插件)中,您将获得一个可以绘制的 HWND。您需要在该窗口中设置 DirectX 上下文并绘制到它 - 无论是按照应用程序需要的帧速率还是仅在 RefreshEvent 到来时绘制。如果您点击有关的链接,您将看到 colonelpanic.net 上有关在 Windows 中绘图的帖子的链接;这应该可以帮助您更好地了解如何获得 HWND。

图片基本一致;如果您有图像数据,则可以使用普通的 Windows 绘图 API 将其绘制到 HWND。

最后,如果您需要其他帮助,我强烈建议您进入 FireBreath IRC 聊天室。我通常在工作日的白天(GMT-0600)在场,有时也有其他人可以提供帮助。

Well, there are two problems you have to solve. Understanding of plugins is really the easier one at this point, since have FireBreath to help you. Gosh, whoever wrote that must have been brilliant! (okay, it was me, so I had to say it)

The first thing to understand is that you don't "place" a "DirectX object" anywhere. You don't "place" an image inside the plugin. Rather, you draw the image to a window just like in any other windows application.

You may want to pull up my answer to another similar question: Directx control in browser plugin

In a normal plugin instance on windows (a "windowed" plugin) you will be given an HWND that you can draw to. You need to set up a DirectX context in that window and draw to it -- either at framerate that your application needs or just when a RefreshEvent comes. If you follow the link about you'll see a link to a post on colonelpanic.net on drawing in windows; that should help you understand better how you get the HWND.

Images are basically the same deal; if you have image data, you can draw it to the HWND using normal windows drawing APIs.

Finally, if you need additional help I highly recommend you pop into the FireBreath IRC chat room. I'm usually around during daylight hours (GMT-0600) on weekdays and there are others who can sometimes help as well.

笔落惊风雨 2024-11-14 13:54:32

截至 2021 年,有方法制作可在 Chrome、Firefox、Safari 中运行的插件,请参阅 适用于 Chrome、Firefox、Safari 标准参考和工具的 Web 扩展(浏览器插件)(2021)

As of 2021 there is way to make plugins that will work in Chrome, Firefox, Safari, see Web Extension (browser plugin) for Chrome, Firefox, Safari standard reference and tools (2021)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文