firemail

标题: 插件开发 [打印本页]

作者: hechengjin    时间: 2015-9-7 15:51
标题: 插件开发
本帖最后由 hechengjin 于 2015-9-8 10:17 编辑

1.下载示例程序源码
http://mxr.mozilla.org/seamonkey ... /samples/npruntime/
下载sdk
http://releases.mozilla.org/pub/ ... leases/1.9.0.0/sdk/xulrunner-1.9.en-US.win32.sdk.zip

2、在vs2010中新建一个Win32 Dynamic-Link Library工程,取名“nprt”。注意:建议工程以小写np开头,并且长度不超过8个字符,这样以后就会省事很多。

3、下一步,选择“An empty DLL project”,然后“Finish”。

4、将刚才下载的源码添加到工程中来。test.html不用添加,nprt.def建议也添加进来。

5、现在还不能编译,否则会出很多错误。打开Project Settings,转到C/C++标签页,在Category中选择Preprocessor,在Preprocessor Definitions中最后面添加: WIN32;_WINDOWS;NPRT_EXPORTS;XP_WIN32;MOZILLA_STRICT_API;XPCOM_GLUE;XP_WIN;_X86_

6、在Additional include directories下面添加XULRunner SDK的include路径,可以是绝对路径,也可以是相对路径,看你当初怎么解压的了。例如:..\..\xulrunner-sdk\include;..\..\xulrunner-sdk\sdk\include

7、在Category中选择Precompiled Headers,选择Not using precompiled headers,OK,关闭Project Settings对话框。打开npp_gate.cpp,将下面的代码注释掉:
jref NPP_GetJavaClass (void)
{
  return NULL;
}

10、编译!OK,过了。



注册方法:regsvr32 nprt.dll  //  找不到入口点DllRegisterServer

编辑注册表
HKEY_CURRENT_USER\Software\MozillaPlugins下
新建子项@mozilla.com.cn/nprt
并新建字符串值“Path”设值为E:\github\Firemail\ExMail\XULRUNNER_DEMO\plugins\mypluginstest\nprt\Debug\nprt.dll

打开火狐浏览器 在地址栏输入“about:plugins” 如果在plugin列表中有本例的nprt.dll及说明我们的plugin示例已经成功完成,







欢迎光临 firemail (http://www.firemail.wang:8088/) Powered by Discuz! X3