0
点赞
收藏
分享

微信扫一扫

NPAPI最简单的代码

曾宝月 2022-02-07 阅读 78


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

注意,需要的接口版本必须是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`



举报

相关推荐

0 条评论