firefox 简单 插件编译 【win】
2010-01-14 20:07
225 查看
Firefox插件基于Mozilla开源的NSAPI.
mioPlugIn采用目前(2009.08)最新的、适合脚本驱动的npruntime架构.
目前(2009.08)使用以下版本
http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/1.9.1.2/sdk/xulrunner-1.9.1.2.en-US.win32.sdk.zip
File->New Project->Vistual C++
Project types选择Visual C++/Win32 Project
Templates选择Win32 Project
Solution Name名称假定为nprt,必须以np开头.
2.Application Settings
3. 加入npruntime架构示例代码到工程中
(a) copy所有从 http://mxr.mozilla.org/seamonkey/source/modules/plugin/samples/
下载的文件到nprt/nprt目录中
(b) 加入nprt工程中
4.解压Mozilla SDK,假定放在C:/xulrunner-sdk(必须与“2.5设置Include Path”一致)
5.设置Include Path
6.设置编译选项
7.关闭precompiled选项
8.设定 Module Definition File: nprt.def
9.修改plugin.cpp DrawText为DrawTextA
10.修改plugin.cpp Invoke method如下,否则当firefox调用此plugin时,会崩溃
------------------------------------------------------------------
------------------------------------------------------------------
11.修改npp_gate.cpp , 去掉_GetJavaClass
------------------------------------------------------------------
------------------------------------------------------------------
12修改几处
为
不然编译报错
12.注解所有 printf
13.适当修改 int32 uint32 等为 int32_t uint32_t等
14.编译即可生成nprt.dll
[图片上传功能暂时关闭,敬请谅解。]...
mioPlugIn采用目前(2009.08)最新的、适合脚本驱动的npruntime架构.
1.开发环境搭建
1.1 安装VS2005
1.2 下载Mozilla SDK
https://developer.mozilla.org/en/Gecko_SDK目前(2009.08)使用以下版本
http://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/1.9.1.2/sdk/xulrunner-1.9.1.2.en-US.win32.sdk.zip
1.3 下载npruntime架构示例代码
http://mxr.mozilla.org/seamonkey/source/modules/plugin/samples/npruntime/2.在VS2005下编译npruntime
1.建立新工程File->New Project->Vistual C++
Project types选择Visual C++/Win32 Project
Templates选择Win32 Project
Solution Name名称假定为nprt,必须以np开头.
2.Application Settings
3. 加入npruntime架构示例代码到工程中
(a) copy所有从 http://mxr.mozilla.org/seamonkey/source/modules/plugin/samples/
下载的文件到nprt/nprt目录中
(b) 加入nprt工程中
4.解压Mozilla SDK,假定放在C:/xulrunner-sdk(必须与“2.5设置Include Path”一致)
5.设置Include Path
"C:/xulrunner-sdk/include";"C:/xulrunner-sdk/include/plugin"; "C:/xulrunner-sdk/include/nspr";"C:/xulrunner-sdk/include/java"
6.设置编译选项
WIN32;_WINDOWS;XP_WIN32;MOZILLA_STRICT_API;XPCOM_GLUE;XP_WIN;_X86_; NPSIMPLE_EXPORTS; _DEBUG
7.关闭precompiled选项
8.设定 Module Definition File: nprt.def
9.修改plugin.cpp DrawText为DrawTextA
10.修改plugin.cpp Invoke method如下,否则当firefox调用此plugin时,会崩溃
------------------------------------------------------------------
bool ScriptablePluginObject::Invoke(NPIdentifier name, const NPVariant *args, uint32_t argCount, NPVariant *result) { if (name == sFoo_id) { printf ("foo called!/n"); MessageBox(NULL,L"foo 被调用 ",L"Java Script 调用范例",MB_OK); return PR_TRUE; } return PR_FALSE; }
------------------------------------------------------------------
11.修改npp_gate.cpp , 去掉_GetJavaClass
------------------------------------------------------------------
/* jref NPP_GetJavaClass (void) { return NULL; } */
------------------------------------------------------------------
12修改几处
#include "npupp.h"
为
//#include "npupp.h" #include "plugin/npfunctions.h"
不然编译报错
12.注解所有 printf
13.适当修改 int32 uint32 等为 int32_t uint32_t等
14.编译即可生成nprt.dll
[图片上传功能暂时关闭,敬请谅解。]...
相关文章推荐
- firefox 简单 插件编译 【linux】
- Firefox插件开发(5)——编译和测试第一个Plugin例子:npruntime
- 我的Firefox插件开发之旅(5)——编译和测试第一个Plugin例子:npruntime
- ubuntu16.04.01 64位 mingw-w64 编译 VLC-2.2.4版本 firefox插件、IE activex插件、windows安装包。
- 简单实用 Firefox最有用的20大插件热力推荐
- Firefox的“httpRequest”插件简单使用
- 写了一个简单的FireFox插件
- VS2013编译最简单的PPAPI插件
- 使用 ADD-ON SDK 开发 基于 Html JQuery 和 CSS 的 firefox 插件入门教程1: 创建一个简单的 Add-on
- CentOS 升级编译安装GCC 4.8.1 + GDB 7.6.1 + Vim的简单配置(Taglist、WinManager插件)
- 我的Firefox插件开发之旅(5)——编译和测试第一个Plugin例子:npruntime(转载)
- 我的Firefox插件开发之旅(5)——编译和测试第一个Plugin例子:npruntime
- 最简单快捷的安装firefox&chromium的flash player插件
- win server 下firefox使用windows media player11插件
- 用Visual Studio 2008 Express编译firefox npruntime插件的注意事项
- 成功编译hadoop eclipse插件。此方式适用于win 7
- java开发环境下反编译插件jad的简单安装
- 火狐插件火狐黑客插件将Firefox变成黑客工具的七个插件
- 用gradle手动编译出android的简单的apk文件(gradle学习之路二)
- Firefox页面截图插件Pearl Crescent Page Saver