Я новичок в NPAPI.Я сталкиваюсь с одной проблемой.в моем плагине мне нужно вернуть некоторые данные из C ++ в JavaScript, да, это обратный вызов.но поток обратного вызова и основной поток являются отдельными потоками.Поэтому я использую NPN_PluginThreadAsyncCall, но проблема не может быть решена также.При обратном вызове произошел сбой Firefox ... Кто-нибудь может мне помочь?
ниже приведены коды в теме обратного вызова. Кто-нибудь может сказать мне, почему произошел сбой?
npnfuncs->pluginthreadasynccall(instance,callBackfunc,(void*)pdata);
/////////////////////////////////////////////////////////////////////
void callBackfunc(void* arg)
{
NPObject *winobj;
npnfuncs->getvalue(instance,NPNVWindowNPObject,&winobj);
NPVariant handler;
NPIdentifier id1 = npnfuncs->getstringidentifier("MyTest".c_str());
npnfuncs->getproperty(instance, winobj, id1, &handler);
NPObject* handlerObj= NPVARIANT_TO_OBJECT(handler);
NPVariant prototype;
NPIdentifier id2 = npnfuncs->getstringidentifier("prototype");
npnfuncs->getproperty(instance, serviceHandlerObj, id2, &prototype);
NPObject* prototypeObj= NPVARIANT_TO_OBJECT(prototype);
NPIdentifier id = npnfuncs->getstringidentifier("fun".c_str());
NPVariant voidResponse;
int status=npnfuncs->invoke(instance,prototypeObj,id,args,argCount,&voidResponse);
return;
}
благодаря С наилучшими пожеланиямиgreatsea