C++ 如何编写浏览器插件?
我很好奇为Chrome、Safari和Opera等浏览器编写浏览器插件的过程。我在想Windows的具体内容,希望使用C++。 是否有任何工具或教程详细介绍该过程 注意:我指的不是扩展或“插件”。我指的是一个插件,类似于Flash和AdobeReader如何使用插件来处理特定的内容类型C++ 如何编写浏览器插件?,c++,npapi,browser-plugin,C++,Npapi,Browser Plugin,我很好奇为Chrome、Safari和Opera等浏览器编写浏览器插件的过程。我在想Windows的具体内容,希望使用C++。 是否有任何工具或教程详细介绍该过程 注意:我指的不是扩展或“插件”。我指的是一个插件,类似于Flash和AdobeReader如何使用插件来处理特定的内容类型 基于Netscape的浏览器、Chrome、Safari和Opera等浏览器使用NPAPI插件系统,您可以学习如何在中编写NPAPI插件,如果您知道Qt,那么他们有一些类可以使浏览器插件的实现更容易,正如其他人指
基于Netscape的浏览器、Chrome、Safari和Opera等浏览器使用NPAPI插件系统,您可以学习如何在中编写NPAPI插件,如果您知道Qt,那么他们有一些类可以使浏览器插件的实现更容易,正如其他人指出的,这些浏览器的插件是使用Qt编写的 注意:Firefox和Chrome都会默认使用大多数插件,Chrome也会这样做。目前不鼓励新项目的NPAPI 用于开始使用NPAPI的资源:
- -NPAPI插件的“Hello World”
- -规范NPAPI标头的源
- -用于查找特定的NPAPI用例
- -插件的跨浏览器、跨平台框架
- -为NPAPI插件生成粘合代码
- -应用程序框架还提供插件支持
- -基于Qt的浏览器插件框架
更新:Chrome已放弃NPAPI支持。我认为在未来,在C++中编写插件变得越来越困难,因为缺少浏览器的支持。一个类似Flash和Adobe Reader有插件来处理特定内容类型的插件。“对NPAPI进行一系列修改,以使插件更具可移植性和安全性”,这是推荐的替代品。我现在想在PPAPI的背景下重新探讨这个问题。IIRC Firefox尚未决定支持PPAPI,而是与插件供应商合作,对NPAPI和插件软件进行类似或相同的安全性修改。”npsimple“”的链接似乎不正确。这是正确的链接吗?@RobW是的,另一个链接完全不相关。它似乎是一个关于智能手机应用程序的网站,名为“摄像头网络”“。对于这些框架,您能否对其功能和简单性进行评论?对于复杂的浏览器插件,你推荐哪一个?@Tyler:这取决于你的要求。一般来说,我只考虑火呼吸或者用普通的NAPI自己写。如果您没有浏览器插件知识,特别是对于跨平台项目,并且还支持来自同一代码库的IE,那么您很可能希望使用Firebreath来避免所需的时间投资。但是,如果插件是项目的重要组成部分,并且您需要细粒度的控制(例如游戏引擎插件),您可能需要自己直接编写一个插件。@GeorgFritzsche感谢您的友好回复。实际上,我已经用Firebreath构建了插件:。但是我遇到了一些汉字编码问题,这需要boost/locale,而FireSpreath没有。firebreath的作者最近没有计划支持i18n。所以我将在下面创建一个答案,列出我的一些资源结果。