NPAPI最简单的代码

简介: NPAPI最简单的代码

具体代码编译参考下载的链接:

https://download.csdn.net/download/quantum7/11988429

 

注意,需要的接口版本必须是1.9.0.17:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "npupp.h"
NPNetscapeFuncs NPNFuncs;
char *
NP_GetMIMEDescription()
{
  return (char*)"application/mozill-plugin6:.foo5:Scriptability Plugin5";
}
NPError
NP_GetValue(void* future, NPPVariable variable, void *value)
{
  //return NPP_GetValue((NPP_t *)future, variable, value);
  NPP instance = (NPP_t *)future;
  if(instance == NULL)
    return NPERR_INVALID_INSTANCE_ERROR;
  switch (variable) {
  case NPPVpluginNameString:
    *((char **)value) = (char*)"NPRuntimeTest";
    break;
  case NPPVpluginDescriptionString:
    *((char **)value) = (char*)"NPRuntime scriptability API test plugin";
    break;
  case NPPVpluginScriptableNPObject:
    //*(NPObject **)value = plugin->GetScriptableObject();
    break;
  default:
    return NPERR_GENERIC_ERROR;
  }
  return NPERR_NO_ERROR;
}

编译办法:

XULRUNNER=xulrunner-sdk-190
rm *.so
rm *.o
g++ -shared -fPIC \
    np_entry.cpp \
    -I ${XULRUNNER}/include \
    -I ${XULRUNNER}/include/nspr \
    -I ${XULRUNNER}/include/plugin \
    -I ${XULRUNNER}/include/java \
    -I/usr/include/gtk-2.0 \
    -I/usr/include/glib-2.0 \
    -I/usr/include/pango-1.0 \
    -I/usr/lib64/glib-2.0/include \
    -I/usr/include/cairo \
    -I/usr/include/gdk-pixbuf-2.0 \
    -I/usr/include/atk-1.0 \
    -o libnprt.so \
   `pkg-config --libs --cflags gtk+-2.0`
目录
相关文章
|
7月前
|
SQL 流计算 OceanBase
这个错误提示表明在运行时找不到`org.apache.flink.table.api.ValidationException`类
这个错误提示表明在运行时找不到`org.apache.flink.table.api.ValidationException`类
588 4
|
Java API Nacos
找不到`com.alibaba.nacos.api.utils.NetUtils`类
找不到`com.alibaba.nacos.api.utils.NetUtils`类
531 0
Python中无dingtalk.api
python3.7.0已在本地成功安装alibabacloud_dingtalk库,但是没有dingtalk.api这个包,因此import时总出错。
|
6月前
Math.atan2求角度解析
`Math.tan(x/y)` 求得是与y轴的夹角,而 `Math.atan2(y, x)` 求得是与x轴的夹角(范围:\(-\pi\) 到 \(\pi\)),顺时针为负,逆时针为正。`Math.atan2` 函数注意点:y在前,x在后。它能正确处理各象限的角度,例如 `Math.atan2(1, 1)` 返回 \(\frac{\pi}{4}\),而 `Math.atan2(-1, -1)` 返回 \(-\frac{3\pi}{4}\)。
65 0
Math.atan2求角度解析
|
7月前
17.求圆周率PI: PI/4 = 1- 1/3 + 1/5 -1/7 +.....
17.求圆周率PI: PI/4 = 1- 1/3 + 1/5 -1/7 +.....
45 0
NPAPI最简单的代码
NPAPI最简单的代码
103 0
org.gradle.api.tasks.compile.CompileOptions.setBootClasspath
org.gradle.api.tasks.compile.CompileOptions.setBootClasspath
85 0
|
Windows
NPAPI插件:不要使用malloc,使用NPN_MemAlloc
NPAPI插件:不要使用malloc,使用NPN_MemAlloc
81 0
|
C++
VS编译NPAPI:jref类型出错
VS编译NPAPI:jref类型出错
55 0
|
C++
VS编译NPAPI:error C2733:不允许重载函数 “NP_Initialize"的第二个参数
VS编译NPAPI:error C2733:不允许重载函数 “NP_Initialize"的第二个参数
92 0

热门文章

最新文章