当前位置: 首页 > news >正文

火狐浏览器在linux下编译,linux下火狐浏览器插件开发.doc

linux下火狐浏览器插件开发

火狐浏览器插件开发

参考/tmy13/item/14ab45971e76511e924f41ba

下载sdk:/en-US/docs/Gecko_SDK

xulrunner-7.en-US.linux-i686.sdk.tar.bz2

解压到/home/chjan/下命名为xulrunner-sdk

下载np_entry.cpp,npn_gate.cpp,npp_gate.cpp,plugin.cpp,plugin.h,resource.h文件

/seamonkey/source/modules/plugin/samples/npruntime/

将其放入同一目录下/home/chjan/FireFox/

进入/home/chjan/FireFox/目录下执行:

g++ -I /home/chjan/xulrunner-sdk/include -I /home/chjan/xulrunner-sdk/include/java -I /home/chjan/xulrunner-sdk/include/nspr -I /home/chjan/xulrunner-sdk/include/plugin -shared -o libnprt.so np_entry.cpp npp_gate.cpp npn_gate.cpp plugin.cpp

生成libnprt.so文件

在eclipse开发工具中编译:新建名为plugin的C++工程

将np_entry.cpp,npn_gate.cpp,npp_gate.cpp,plugin.cpp,plugin.h,resource.h文件拷到plugin工程下

执行sudo cp libnprt.so /usr/lib/mozilla/plugins将libnprt.so拷贝到/usr/lib/mozilla/plugins目录下

打开火狐浏览器输入about:plugins查看是否有libnprt.so

在plugin.cpp中添加自己的方法:

如果为带参的方法如果为带参的方法.html:

运行结果:

type="application/mozilla-npruntime-scriptable-plugin"在npp_gate.cpp中定义

在此处可以修改为你自己定义的MIMEtype

相关文章:

  • linux vi编辑撤销,vi撤销命令(u和U),撤销上一次的操作
  • flask部署linux视频,基于python的web架构部署注意事项
  • Linux下载WordPress出现错误,解决wordpress发生意外错误,可能WordPress.org或服务器配置文件存在问题...
  • linux下github上传文件,linux下将本地文件上传到github中?
  • 具有二进制时钟的Linux,Unix Linux
  • c语言while语句里if,C语言中流程控制语句(if,switch,for,while,do-while,continue,break,return)...
  • 0809连接单片机c语言,adc0809引脚图及功能详解,adc0809与51单片机连接电路分析
  • c语言 星期,计算任何一天是星期几的C语言源代码.
  • android版本sdk api对应,Android API Level与sdk版本对照表
  • android js变量定义数组,js 声明数组和向数组中添加对象变量的简单实例
  • Android旋转视频工具类,Android图片旋转工具类
  • android zip4j说明文件,Android Zip4J 使用笔记
  • android视频贴纸第三方,短视频中接入视频贴纸SDK是用户真正想要的吗
  • Nexus9安装android9,Nexus 9支持扩展卡吗?Nexus 9支持多大的储存卡?
  • iphone6安装android,在iPhone里装了真 Android系统 这事情已经很神奇了
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • Angular4 模板式表单用法以及验证
  • gf框架之分页模块(五) - 自定义分页
  • Java 9 被无情抛弃,Java 8 直接升级到 Java 10!!
  • Java,console输出实时的转向GUI textbox
  • JavaScript DOM 10 - 滚动
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Java小白进阶笔记(3)-初级面向对象
  • Python_OOP
  • REST架构的思考
  • WePY 在小程序性能调优上做出的探究
  • 构建工具 - 收藏集 - 掘金
  • 构造函数(constructor)与原型链(prototype)关系
  • 聊聊hikari连接池的leakDetectionThreshold
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 在electron中实现跨域请求,无需更改服务器端设置
  • Spring第一个helloWorld
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (echarts)echarts使用时重新加载数据之前的数据存留在图上的问题
  • (vue)el-checkbox 实现展示区分 label 和 value(展示值与选中获取值需不同)
  • (二十三)Flask之高频面试点
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (九十四)函数和二维数组
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (四)库存超卖案例实战——优化redis分布式锁
  • (一)Dubbo快速入门、介绍、使用
  • (转)程序员技术练级攻略
  • .net core Swagger 过滤部分Api
  • .NET Core使用NPOI导出复杂,美观的Excel详解
  • .Net MVC4 上传大文件,并保存表单
  • .NET 中使用 TaskCompletionSource 作为线程同步互斥或异步操作的事件
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • @RequestBody与@ResponseBody的使用
  • [20171101]rman to destination.txt
  • [Assignment] C++1
  • [AX]AX2012 SSRS报表Drill through action
  • [BZOJ1040][P2607][ZJOI2008]骑士[树形DP+基环树]
  • [C++随笔录] 红黑树
  • [EFI]Dell Latitude-7400电脑 Hackintosh 黑苹果efi引导文件
  • [ISITDTU 2019]EasyPHP