Я вставил простой плагин NPAPI в расширение Google Chrome. Он устанавливается в Google Chrome (он показан в about: plugins), но на фоновой html-странице показано «отсутствует плагин» и когда вызывается метод (скажем, плагин) .foo), он показывает сообщение "плагин не имеет метода foo"
Мой вызов вызова выглядит примерно так
static bool
invoke(NPObject* obj, NPIdentifier methodName, const NPVariant *args, uint32_t argCount, NPVariant *result) {
logmsg("invoke");
int error = 1;
char *name = npnfuncs->utf8fromidentifier(methodName);
if(name) {
if(!strcmp(name, "foo")) {
...
....
return invokeDefault(obj, args, argCount, result);
}
}
// aim exception handling
npnfuncs->setexception(obj, "exception during invocation");
return false;
}
https://developer.mozilla.org/en/XEmbed_Extension_for_Mozilla_Plugins
в соответствии с этой документацией, я изменил свою функцию NP_GetValue, и у плагина нет NPP_SetWindow, так как я не хотел, чтобы это был оконный плагин.
Я что-то не так делаю?
Также укажите любые другие места, где может быть ошибка.
Спасибо
Привет