在HTML中给PPAPI插件配置参数

foruok原创,如需转载请关注foruok的微信订阅号“程序视界”联系foruok。

在HTML中,可以通过embed或object标签来配置插件。使用embed类似下面这样:

<embed id="myplugin" type="application/x-ppapi-myplugin" width="1200px" height="520px">

使用object类似下面这样:

<object id="myplugin" type="application/x-ppapi-myplugin" width="1200px" height="520px" custom="i am custom">
  <param name="tang" value="desktop" />
</object>

PPAPI插件实例化时,可以收到在embed或object中配置的参数。所有嵌在标签中的属性(比如id=”myplugin”)、param指定的参数,都会以name-value对的形式传递给PPP_Instance接口的DidCreate方法。该方法原型如下:

PP_Bool (*DidCreate)(PP_Instance instance,
                     uint32_t argc,
                     const char* argn[],
                     const char* argv[]);

其中,argc是CEF搜集的embed或object中的参数个数,argn数组是参数名字,argv数组是参数的值。代码中可以这样处理参数:

PP_Bool Instance_DidCreate(PP_Instance instance,
    uint32_t argc,
    const char* argn[],
    const char* argv[])
{
    ...

    char szLog[256] = { 0 };
    sprintf_s(szLog, 256, "PPAPI Got %d params\r\n", argc);
    OutputDebugStringA(szLog);
    for (int i = 0; i < argc; i++)
    {
        sprintf_s(szLog, 256, "name=%s, value=%s\r\n", argn[i], argv[i]);
        OutputDebugStringA(szLog);
    }

    ...
}

针对前面的object标签示例,使用DebugView可能看到下面的输出:

Ok,能处理参数,插件就可以定制化了。



其他参考文章:

时间: 2024-12-11 16:32:38

在HTML中给PPAPI插件配置参数的相关文章

Eclipse中Easy Shell插件配置PowerCmd

1.了解EasyShell.PowerCMD和基本命令 http://sourceforge.net/projects/pluginbox/ http://www.powercmd.com/ 了解基本命令 cmd.start及 PowerCmd命令参数 2.EasyShell插件配置PowerCMD Eclipse -> Window -> Prefernces -> Easy Shell Presets选择"Unkonwn Shell / file browser"

SpringBoot中自定义properties文件配置参数并带有输入提示

1. 创建配置类 在项目中创建一个参数映射类如下 @ConfigurationProperties(prefix = "user.info") public class MyProperties { private String name; private Integer age; public String getName() { return name; } public void setName(String name) { this.name= name; } public S

ssh框架中struts.xml 的配置参数详解

<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <!-- <?xml ?>中的为

Eclipse下JRebel插件配置

因为我安装的JRebel插件版本为6.0.3.下面我就以JRebel6.0.3版本的插件为例进行讲述.Eclipse中的JRebel插件配置要注意三点 1. 勾选要使用的应用服务器 因为我使用的是tomcat,所以我要在JRebel Config Center下的Overview页签中的JRebel Enabled/Server中勾选 Tomcat Vx.xx Server at localhost. 2. 勾选开发中的项目 在JRebel Config Center下的Overview页签中的

jquery的uploadify插件多文件上传配置参数详解

最近做了个多文件上传,需要限制上传文件类型的例子.以前没做过找了一些资料,下次有用.同时也给大家做参考. uploader: uploadify.swf 文件的相对路径,该swf文件是一个带有文字BROWSE的按钮,点击后淡出打开文件对话框,默认值:uploadify.swf. script: 后台处理程序的相对路径 .默认值:uploadify.php checkScript:用来判断上传选择的文 件在服务器是否存在的后台处理程序的相对路径 fileDataName:设置一个名字,在服务器处理

项目中Zookeeper配置参数笔记

ZooKeeper是以Fast Paxos算法为基础的,Paxos 算法存在活锁的问题,即当有多个proposer交错提交时,有可能互相排斥导致没有一个proposer能提交成功,而Fast Paxos作了一些优化,通过选举产生一个leader (领导者),只有leader才能提交proposer,具体算法可见Fast Paxos.因此,要想弄懂ZooKeeper首先得对Fast Paxos有所了解. ZooKeeper的基本运转流程: 1.选举Leader. 2.同步数据. 3.选举Leade

笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDispatcher 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <filter>     <filter-name>struts2</filter-name>     <filter-class>org.apache.struts2.di

jsp 使用application.getInitParameter来获取web.xml中配置参数

jsp中9个内置对象之一application,它的数据对整个web应用都有效,application有一个重要的用途就是获取web.xm中的配置参数,这样可以提高代码的移植性.应用案例如下: 在web.xml中配置如下代码: <context-param> <param-name>driver</param-name> <param-value>com.mysql.jdbc.Driver</param-value> </context-p

针对Properties中实时性要求不高的配置参数,用Java缓存起来

Properties常用于项目中参数的配置,当项目中某段程序需要获取动态参数时,就从Properties中读取该参数,使程序是可配置的.灵活的. 有些配置参数要求立即生效,有些则未必: 一.实时性要求非常高.项目中,有些参数要求实时性非常高,即在系统运行中,IT人员修改了该参数值,该新参数值要求立即在程序中生效: 二.实时性要求不高.其实,并不是每个配置参数都要求实时性那么高,有些配置参数基本不会在项目运行当中修改,或即使在运行当中修改,也只要求其在下一次项目启动时生效. 针对第二种情况,鉴于程