FireFox插件和扩展开发(三)—— scriptable实例

 

依然是官网的例子,下载地址是http://mxr.mozilla.org/seamonkey/source/modules/plugin/tools/sdk/samples/scriptable/

我要使用的平台是Windows

 

按照网页说明编译该项目:https://developer.mozilla.org/en/Compiling_The_npruntime_Sample_Plugin_in_Visual_Studio

 

需要说明的是,由于这个项目引用了xpidl语言,所以不应当再使用MS的MIDL编译器,需要修改一下设置,在将sIScriptablePluginSample.idl加入到项目后,选择该文件查看该文件属性,将"常规"->"工具"的值由"MIDL工具",修改为"自定义生成工具","自定义生成步骤"->"命令行"的值设置为"$(ProjectDir)script.bat $(InputFileName)","输出"的值改为"./$(InputName).h",如果你的项目的名称不是

npscript.bat,文件名随便起,内容是

 

还要一些共用的文件要下载到该项目下

http://mxr.mozilla.org/seamonkey/source/modules/plugin/tools/sdk/samples/include/

http://mxr.mozilla.org/seamonkey/source/modules/plugin/tools/sdk/samples/common/

 

然后,就可以编译该工程了

 

 


 

下面我们来看看如何使用这个程序调用我们之前写的xpcom-test组件

 

添加链接库的配置

"项目属性"->"链接器"->"输入"->"附加依赖项"的值设置为 xpcomglue_s.lib xpcom.lib nspr4.lib version.lib

"项目属性"->"链接器"->"常规"->"附加库目录"的值设置为 ../sdk/lib

 

idl文件中添加

 

nsScriptablePeer.cpp中的实现

 

plugin.h中加函数

 

plugin.cpp中

 

 

然后编译

 

 


 

 

接下来,将我们编写的plugin转成extension

 

步骤一、新建一个名为install.rdf的文件

 

<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:em="http://www.mozilla.org/2004/em-rdf#">
<Description about="urn:mozilla:install-manifest">
<em:id>npscript@myplugin.com</em:id>
<em:name>npscript</em:name>
<em:version>1.0</em:version>
<em:type>2</em:type>
<em:targetApplication>
<Description>
<em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
<em:minVersion>1.5</em:minVersion>
<em:maxVersion>3.0.*</em:maxVersion>

</Description>
</em:targetApplication>
</Description>
</RDF>

 

[说明]
1. 以邮件的格式比较好
2. 一定要有个名字标识
3. 版本信息可以自己描述,但是要满足 Toolkit version format
4. id{ec8030f7-c20a-464f-9b0e-13a3a9e97384}不可以修改,这个是FireFox的标识

 

 

步骤二、将生成的npscript.dll,nsIScriptablePluginSample.xpt放在一个Plugins的目录下,将Plugins和刚才的install.rdf文件放在目录npscript@myplugin.com(目录名要使用install.rdf中的em:id的值)下,用rar打个包,把后缀改为.xpi
目录结构是

npscript@myplugin.com

|-install.rdf
|-plugins/
||--npscript.dll
||--nsIScriptablePluginSample.xpt

|-comoponents

||--comp.xpt

||--test.dll

 

步骤三、把该目录npscript@myplugin.com放在Program Files/Mozilla Firefox/extensions下,重新启动FireFox

 

步骤四、将npscript项目下的test.html文件加个按钮和方法

 


13. 用FireFox打开该html,点按钮即可看到结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值