使用NPAPI编写浏览器插件的调用本机上的程序

作者: admin 分类: npapi 发布时间: 2013-02-19 14:18 ė3,636 浏览数 6没有评论
文章转自王牌软件
站长推荐:NSetup一键部署软件
一键式完成美化安装包制作,自动增量升级,数据统计,数字签名。应对各种复杂场景,脚本模块化拆分,常规复杂的脚本代码,图形化设置。无需专业的研发经验,轻松完成项目部署。(www.nsetup.cn)
from:csdn
使用NPAPI编写浏览器插件的源码实例
 
 
用于种种原因,最近对制作浏览器(chrome,firefox)的插件非常感兴趣
搜了一下,讲的几乎全都是在讲的方法和API,找个简单可以运行的代码实例,还真是难!
不过最终还算幸运,终于找一个例子(http://geeklu.com/2010/10/getting-started-with-npapi-plugin/comment-page-1/).
很遗憾这个例子在我的linux机器上无法正常工作.所以我以此例子为基础写了个新例子,顺路我还写了个chrome的扩展作为演示.
关于NPAPI和chrome的扩展:
NPAPI:
[1] http://colonelpanic.net/2009/05/building-a-firefox-plugin-part-two/
[2] http://rintarou.dyndns.org/2010/04/23/scriptable-plugin-%E6%8E%A2%E8%A8%8E-20090408/
[3] http://blogold.chinaunix.net/u3/94039/showart_2004756.html
[4] https://developer.mozilla.org/en/Plugins
 
[5] 如何在chrome的扩展中使用:http://code.google.com/chrome/extensions/npapi.html
[6] 如何编写chrome的扩展:http://code.google.com/chrome/extensions/getstarted.html
 
插件的功能:
提供网页的javascript可以调用本机上的程序的能力,
所以本插件其实是很危险的,当然任何可以让网页调用本机上程序的插件都是很危险的.
不过这里只是一个演示插件编写的例子,看到的人不要惊慌哦…
 
关于源码的说明
npapi/npapi.h
npapi/npfunctions.h
npapi/npruntime.h
npapi/nptypes.h
直接来自:http://code.google.com/p/npapi-headers/
 
plugin_exec.c中的一些函数:
char*
NP_GetMIMEDescription()
return的字符串的格式必须是:"text/html:htm,html:HTML Document;application/x-texinfo:tex,texi,texinfo:TexInfo Document;"
详情请看[3]
 
NPError
NP_GetValue (void *future,
     NPPVariable variable,
     void *value)
一定要处理 variable为NPPVpluginNeedsXEmbed的case,否则chrome不会启用插件(firefox还算正常)
 
插件的演示方法:
$cp libplugin_exec.so ~/.mozilla/plugins
$firefox wkt.html 
$google-chrome wkt.html ###在网页输入一个命令(必须运行后能跳出窗口,例如gnome-terminal,否则看不见效果),然后点"Run"按钮.
使用NPAPI编写浏览器插件的源码实例 - wkt55555 - wkt的博客
使用NPAPI编写浏览器插件的源码实例 - wkt55555 - wkt的博客

  

chrome扩展的演示方法:
扩展在chrome_extension目录下
加载扩展(加载方法看[6]的第4步),
然后页面上每个link的右键菜单会多出一个菜单项"save link to /tmp/link.log",
点击该菜单项后link的url就会被保存到/tmp/link.log
使用NPAPI编写浏览器插件的源码实例 - wkt55555 - wkt的博客
本例源码地址:http://u.115.com/file/f23aeb448f
注意此例仅在debian sid/ubuntu10.10 编译/测试.


只回答业务咨询点击这里给我发消息 点击这里给我发消息

王牌软件,兼职软件设计,软件修改,毕业设计。

本文出自 王牌软件,转载时请注明出处及相应链接。

本文永久链接: http://www.softwareace.cn/?p=175

0

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">


Ɣ回顶部

无觅相关文章插件,快速提升流量