npapi+ppapi
缘
这个作者很懒,什么都没留下…
展开
-
NPAPI和PPAPI开发
NPAPI和PPAPI开发环境: [1]Visual Studio 2010 SP1 Visaul Stuio 2013 Update4 [2]Python2.7 [3]Firefox 41.0.1 [4]IE 11 [5]Google chrome 45.0.2454.101 [6]Opera 32.0 [7]360浏览器 7.1.1.808转载 2016-06-01 09:50:41 · 2700 阅读 · 0 评论 -
Chrome之plugin开发
前言在Firefox下可用的npapi插件,在chrome下调用时遇到问题,于是尝试研究chrome下的ppapi插件,一路上真是磕磕碰碰,波折不断啊。阶段一、复用npapi尝试将npapi直接用在chrome中,结果在chrome://plugins页下能看到npapi的插件,调试时看到插件对象被创建了,但是无法调用插件对象的函数。之后各种尝试未果,网上一搜貌转载 2016-06-01 12:25:47 · 4759 阅读 · 2 评论 -
使用NPAPI编写跨平台(Windows/Linux/Mac)跨浏览器(Chrome/Firefox/Safari)的插件
最近项目中需要我编写跨平台的浏览器控件供JavaScript调用,经过几天折腾,我的插件已经能够很好的工作在Windows、Linux、Mac平台上的主流浏览器上,和JavaScript也可以很好的进行交互通知,下面就介绍一下主要的NPAPI插件开发流程和一些需要特别注意的地方。下载NPAPI-SDK,里面有4个文件npapi.h、npfunctions.h、npruntime.h、n转载 2016-06-01 10:21:46 · 1935 阅读 · 1 评论 -
NPAPI插件开发详细记要:插件运行流程分析
NPAPI插件开发详细记录:插件运行流程分析本文详细分析插件的代码是如何执行的,主要分析np_entry.cpp、npn_gate.cpp和npp_gate.cpp.希望能够有所收获。在windows平台下,插件就是一个dll,注意到这个dll的def文件内容是:插件接口既然是浏览器调用插件,必然浏览器是通过上面三个接口来调用的。上述三个接口,第三个很明显是结束插件时调用。参考资料:h转载 2016-06-01 10:20:26 · 2712 阅读 · 1 评论 -
NPAPI插件开发
1.插件是什么插件是一种遵循一定规范的应用程序接口编写出来的程序。插件必须依附于一个宿主程序,为宿主程序提供增强功能。插件的种类有很多,这里主要讨论浏览器插件。IE下利用OLE和COM技术开发的浏览器插件称为ActiveX控件。一般以.ocx为扩展名。IE浏览器通过OLE标准与ActiveX控件之间进行交互,完成对现有功能的扩充。IE和OLE技术都是微软出的,所以如果在非I转载 2016-06-01 10:14:44 · 1141 阅读 · 0 评论 -
npapi文档
NPAPI讲解文档连接原创 2016-06-01 10:12:52 · 602 阅读 · 0 评论 -
编写firefox plugin的跨平台代码
最近开发了一个firefox plugin,有点心得,决定将其写下来。因为plugin的一些规则比较死板,所以了解其中函数的关系和调用的先后顺序还要参考https://developer.mozilla.org/en/Plugins,本文主要讨论Windows,Linux,MAC OS X三个平台间的差异以及安装更新的过程。 plugin其实是一个可执行的文件(动态库),主要转载 2016-06-01 10:09:52 · 1093 阅读 · 0 评论 -
浏览器跟js交互、NPAPI之NPRuntime开发
浏览器和js交互、NPAPI之NPRuntime开发前面介绍过NPRuntime :NPAPI 原本是由 Netscape 所制定的一组单纯的 C Plugin API,起初是无法支持 Scriptability;于是到了 2004 年底,各家 Browser (IE, Opera, Mozilla 等) 都同意支持NPRuntime 延伸 API 以支持 Scriptab转载 2016-06-01 10:08:13 · 1526 阅读 · 0 评论 -
NPAPI插件开发详细记录:插件开发入门
为什么这还是入门呢?因为前面的我们什么都没学会,只是学会了建立一个dll项目,并生成了一个Firefox可以识别dll,在测试页面中不会弹出需要下载插件的错误。而任何功能都没有实现。所以这里才是真正的入门。本文随着作者本人的学习进度逐渐深入,难免有不周全之处,请看到本文的朋友帮忙指出有误的地方。插件窗口在哪里入门篇暂时只讲述一个问题,根据我的理解,plugin创建时,浏览器会创建一个子转载 2016-06-01 10:05:43 · 2861 阅读 · 0 评论 -
NPAPI插件开发学习:插件中多个dll文件的打包
利用NPAPI开发浏览器插件过程中,发现自己开发的插件调用了多个第三方dll动态库文件。起初按照火狐社区中的方法只在注册表中添加了自己开发的dll文件,未将第三方的dll文件进行注册,浏览器每次加载测试页面的时候,FireFox会出现死机,而且在任务管理器中可以发现有多个plugins-Container.exe进程出现。于是在网络中搜索了有关dll打包整合以及NPAPI插件打包的相关资料。现整理转载 2016-06-01 10:00:38 · 2447 阅读 · 0 评论 -
NaCl学习笔记: 环境搭建
下载 Native Client SDKhttps://developers.google.com/native-client/sdk/download需要设置两个环境变量, Python2.7.3的安装路径加到PATH里, NACL_SDK_ROOT设置为对应版本目录CHROME_PATH这个是后面VS调试用的, 如果不用VS开发, 可以不设置转载 2016-06-01 09:55:57 · 4648 阅读 · 2 评论 -
Chrome Native Client 简介
Chrome Native Client 简介目的:Native Client是一种允许在浏览器中运行native compiled code 的技术,允许开发者运用自己熟悉的语言来开发web应用,而不只是JavaScript,目前NativeClient技术只能应用于google自己的chrome中。一个使用Native client技术的web应用的组成:JavaScr转载 2016-06-01 09:55:07 · 5319 阅读 · 0 评论 -
chromium源代码结构
Chrome源代码结构首先,开始接触Chrome的童鞋可能有一个疑惑,Chrome和Chromium是同一个东西吗?答案是,Chrome是Google官方的浏览器项目名称,Chromium是Google官方对Chrome开源项目。说白了就是Chrome是Google自己的官方浏览器版本,而Chromium是开源项目,所有有兴趣的开发者都可以参加,Chromium中出现的新技术如果经过测试是转载 2016-06-01 09:53:46 · 3511 阅读 · 0 评论 -
安装vs_addin 支持2013
3) 安装vs_addina. 修改安装脚本支持VS 2013 (官方只支持2012和2010, 如果你当前的VS版本为2010或2012, 则无需当前步骤)打开install.py, 搜索2012, 替换为2013; 搜索V11, 替换为V12; 然后, 将nacl_sdk\vs_addin下的2012文件夹改名为2013原创 2016-06-01 15:23:10 · 2412 阅读 · 0 评论