如何在linux上提供NPAPI插件版本?

时间:2011-06-10 07:44:38

标签: npapi

下面 http://gplflash.sourceforge.net/gplflash2_blog/npapi.html

鉴于代码是

switch(var)
    {
        case NPPVpluginNameString:
            *val = "Example Plug-In";
            break;
        case NPPVpluginDescriptionString:
            *val = "A plug-in that demonstrates how NP_GetVal is implemented";
            break;
        default:
            ret = NPERR_INVALID_PARAM;
            break;
    }

但它不关心版本。 如何在NPAPI插件中指定版本?

1 个答案:

答案 0 :(得分:2)

NPP_GetValue仅用于获取插件名称和描述;为了获得mimetype和版本,linux上有额外的入口点。

FireBreath使用以下代码:https://github.com/firebreath/FireBreath/blob/master/src/PluginAuto/X11/np_x11main.cpp#L24

mozilla文档包含以下不太有用的文档:https://developer.mozilla.org/Talk:en/Gecko_Plugin_API_Reference/Plug-in_Side_Plug-in_API

linux上插件版本的入口点似乎是:

extern "C" char * NP_GetPluginVersion()
{
    return "1.0.0.75";
}

如果在所有浏览器上以相同的方式工作,我并不是100%肯定;您可以随时将quick project放在FireBreath中并进行一些测试,以查看各种浏览器报告的版本。