CN102043645B - 一种加载插件的方法及装置 - Google Patents
一种加载插件的方法及装置 Download PDFInfo
- Publication number
- CN102043645B CN102043645B CN200910206082.4A CN200910206082A CN102043645B CN 102043645 B CN102043645 B CN 102043645B CN 200910206082 A CN200910206082 A CN 200910206082A CN 102043645 B CN102043645 B CN 102043645B
- Authority
- CN
- China
- Prior art keywords
- unit
- plug
- load
- described plug
- host program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请实施例公开了一种加载插件的方法及装置。所述方法包括:宿主程序获知启动的一个实例要加载插件,所述宿主程序支持至少一个实例;所述宿主程序获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;所述宿主程序根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;若所述要加载的插件要求启动单实例,所述宿主程序从插件托管进程获取插件的通讯接口,所述插件托管进程至少用于管理所述宿主程序的实例对要求启动单实例的插件的访问;所述启动的一个实例利用所述插件的通讯接口对所述要加载的插件执行加载操作。通过本申请,可以减少对系统资源的占用,提高系统性能。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种加载插件的方法及装置。
背景技术
有些应用程序具有启动多个实例的功能。例如:用户可以在同一台计算机上以不同的用户名登录即时通讯客户端,用户登录的各个即时通讯客户端是即时通讯软件的一个实例。
当其中一个即时通讯客户端实例需要在客户端加载插件时,现有解决方案为:每个实例均在客户端加载一个插件实例。
发明人在研究过程中,发现上述现有解决方案占用客户端的系统资源较多,影响了系统性能。
发明内容
本申请实施例的目的是提供一种加载插件的方法及装置,以减少对系统资源的占用,提高系统性能。
一种加载插件的方法,所述方法包括:
宿主程序获知启动的一个实例要加载插件,所述宿主程序支持至少一个实例;
所述宿主程序获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;
所述宿主程序根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;
若所述要加载的插件要求启动单实例,所述宿主程序从插件托管进程获取插件的通讯接口,所述插件托管进程至少用于管理所述宿主程序的实例对要求启动单实例的插件的访问;
所述启动的一个实例利用所述插件的通讯接口对所述要加载的插件执行加载操作。
优选地,所述插件单实例配置列表由服务器或者客户端创建。
可选地,在所述宿主程序从插件托管进程获取插件的通讯接口之前,所述方法还包括:
所述宿主程序检查操作系统中是否存在所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识,若是,则所述宿主程序启动所述插件托管进程。
可选地,在所述宿主程序启动所述插件托管进程之后,所述方法还包括:
所述宿主程序向所述插件托管进程请求加载所述要加载的插件。
可选地,在所述宿主程序向所述插件托管进程请求加载所述要加载的插件之后,所述方法还包括:
所述插件托管进程判断所述要加载的插件是否已被创建,若是,向所述宿主程序返回所述插件的通讯接口,否则创建所述要加载的插件,并向所述宿主程序返回所述插件的通讯接口。
优选地,若所述操作系统中不存在所述插件托管进程,则所述宿主程序使用标准应用程序编程接口创建所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识。
可选地,在所述启动的一个实例利用所述插件句柄对所述要加载的插件执行加载操作之后,所述方法还包括:
当所述启动的一个实例退出运行后,所述宿主程序通知所述插件托管进程删除退出运行的实例。
可选地:当计数器的值大于预置门限时,所述插件托管进程结束所管理的所有插件的运行。
优选地,所述通讯接口为COM接口。
一种加载插件的装置,所述装置运行于客户端,所述装置包括:
获知单元,用于获知启动的一个宿主程序实例要加载插件,所述宿主程序支持至少一个实例;
第一获取单元,用于获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;
判断单元,用于根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;
第二获取单元,用于若所述要加载的插件要求启动单实例,从插件托管进程获取插件的通讯接口,所述插件托管进程用于管理所述宿主程序的实例对要求启动单实例的插件的访问;
执行单元,用于利用所述插件的通讯接口对所述要加载的插件执行加载操作。
可选地,所述装置还包括:
检查单元,用于在所述第二获取单元执行操作之前,检查操作系统中是否存在所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识;
启动单元,用于当所述检查单元检查出所述操作系统中存在所述插件托管进程时,启动所述插件托管进程。
可选地,所述装置还包括:
请求单元,用于在所述启动单元执行操作之后,向所述插件托管进程请求加载所述要加载的插件;
所述插件托管进程判断所述要加载的插件是否已被创建,若是,向所述第二获取单元返回所述插件的通讯接口,否则创建所述要加载的插件,并向所述第二获取单元返回所述插件的通讯接口。
可选地,所述装置还包括:
创建单元,用于当所述检查单元检查出所述操作系统中不存在所述插件托管进程时,使用标准应用程序编程接口创建所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识。
可选地,所述装置还包括:
通知单元,用于在所述执行单元执行操作之后,当所述启动的一个实例退出运行后,通知所述插件托管进程删除退出运行的实例。
可以看出,在本申请实施例中,宿主程序要获取一个插件单实例配置列表,当宿主程序的实例要加载的插件是要求单实例的插件时,宿主程序从插件托管进程获取插件的通讯接口,如COM接口。宿主程序的实例可以利用插件的通讯接口对要加载的插件执行加载操作。由于要加载的插件要求单实例,因此,宿主程序的各实例加载的均是该插件的同一个实例,从而减少了对系统资源的占用,提高了系统性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一方法流程图;
图2为本申请实施例二方法流程图;
图3为申请实施例三装置结构框图;
图4为本申请实施例四装置结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
为便于理解,首先介绍以下术语:
插件:指符合宿主程序的接入规范,能够运行于宿主程序,且非宿主程序本身所必须的功能或者业务模块,从物理形式上看,包含但不限于动态链接库。
宿主程序:供插件运行的载体,同时制定了插件的接入规范。
插件托管进程:用于加载要求单实例的插件,管理宿主程序对要求单实例的插件的访问,管理要求单实例的插件的生命周期,即当没有宿主程序在使用插件时,卸载插件,然后退出运行。
单实例的意思是整个系统上所有的即时通讯客户端共享的同一份插件实例。
请参考图1,为本申请实施例一方法流程图,可以包括以下步骤:
步骤101:宿主程序获知启动的一个实例要加载插件,所述宿主程序支持至少一个实例;
步骤102:所述宿主程序获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;
步骤103:所述宿主程序根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;
步骤104:若所述要加载的插件要求启动单实例,所述宿主程序从插件托管进程获取插件的通讯接口,所述插件托管进程用于管理所述宿主程序的实例对要求启动单实例的插件的访问;
步骤105:所述启动的一个实例利用所述插件的通讯接口对所述要加载的插件执行加载操作。
可以看出,在本申请实施例中,宿主程序要获取一个插件单实例配置列表,当宿主程序的实例要加载的插件是要求单实例的插件时,宿主程序从插件托管进程获取插件的通讯接口,如COM接口。宿主程序的实例可以利用插件的通讯接口对要加载的插件执行加载操作。由于要加载的插件要求单实例,因此,宿主程序的各实例加载的均是该插件的同一个实例,从而减少了对系统资源的占用,提高了系统性能。
下面一个更加具体的实施例对本申请进行说明。
请参考图2,为本申请实施例二方法流程图,可以包括以下步骤:
步骤201:客户端启动宿主程序(例如:即时通讯软件)的一个实例;
该宿主程序具有支持至少一个实例的功能。客户端在执行步骤201之前,可以已经启动了该宿主程序的另一个实例,或者,客户端在步骤201中第一次启动该宿主程序的一个实例。
步骤202:宿主程序获知用户要在步骤201中启动的实例上使用插件功能;
步骤203:宿主程序获取插件单实例配置列表;
插件单实例配置列表可以由服务器创建并进行配置,还可以由客户端创建并进行配置。插件单实例配置列表至少包括要求启动单实例的插件的信息。具体地,插件单实例列表可以参考以下具体实例:
<?xml version=″1.0″encoding=″gb2312″?>
<Singletons>
<Singleton AppID=18401Name=″翻译插件″/>
<Singleton AppID=27485Name=″扑克插件″/>
</Singletons>
在上述具体实例中,“翻译插件”以及“扑克插件”仅启动单实例,其中,18401是“翻译插件”在宿主程序中的标识插件ID(AppID),27485是“扑克插件”的AppID。需要指出的是,本申请实施例的插件单实例配置列表不局限于上述具体实例。
步骤204:宿主程序根据获取的单实例配置列表判断用户要使用的插件是否启动单实例,若是,则进入步骤205,否则,加载该插件,流程结束;
由于只有当用户要使用的插件要求启动单实例这个条件满足时才进入步骤205,因此,宿主程序启动的各个实例均加载的是该插件所要求的单实例。当用户要使用的插件不要求启动单实例时,按照正常流程为步骤201中启动的实例加载该插件的一个实例。
步骤205:宿主程序检查操作系统中是否存在一个该插件ID标识的插件托管进程,若是,则进入步骤206,否则,宿主程序使用COM提供的标准应用程序编程接口(API)创建一个该插件ID标识的插件托管进程,并进入步骤206;
插件托管进程是一个基于COM技术实现的进程外组件。宿主程序创建插件托管进程后,还要保存该插件托管进程的通讯接口(如COM接口)与该插件ID的对应关系。
步骤206:宿主程序启动该插件ID标识的插件托管进程,若启动成功,宿主程序得到COM API返回的一个该插件托管进程的通讯接口,进而可以通过该插件托管进程的通讯接口与插件托管进程进行通信;
步骤207:宿主程序向上述插件托管进程请求加载用户要求使用的插件;
步骤208:上述插件托管进程判断该插件是否已被创建,若是,进入步骤209,否则,使用COM提供的API创建该插件,并进入步骤209;
步骤209:上述插件托管进程向宿主程序返回该插件的通讯接口;
通过此接口,宿主程序可以访问插件。
上述插件托管进程维护了一个插件使用列表,插件使用列表用于记录宿主程序启动的各实例的信息。当步骤201中启动的实例可以利用宿主程序接收到的该插件的通讯接口加载该插件时,插件托管进程将步骤201中启动的实例的信息记录至插件使用列表,表明多了一个宿主程序的实例要加载该插件。
步骤210:宿主程序在步骤201中启动的实例使用该插件的通讯接口加载该插件。
由于该插件是要求启动单实例的插件,故无论哪个被启动的实例加载该插件时,加载的都是该插件的同一个实例。
可选地,当宿主程序的一个实例退出运行后,宿主程序利用插件托管进程的托管句柄通知插件托管进程,使插件托管进程在插件使用列表中删除退出运行的实例。
可选地,插件托管进程周期性查看插件使用列表,若还存在插件使用者,则将计数器加1,当计数器的值大于预置门限时,插件托管进程结束插件的运行,以释放掉插件运行所占用的资源。
可以看出,在本申请实施例中,宿主程序要获取一个插件单实例配置列表,当宿主程序的实例要加载的插件是要求单实例的插件时,宿主程序从插件托管进程获取插件的通讯接口,宿主程序的实例可以利用插件的通讯接口对要加载的插件执行加载操作。由于要加载的插件要求单实例,因此,宿主程序的各实例加载的均是该插件的同一个实例,从而减少了对系统资源的占用,提高了系统性能。
此外,由于配置了插件单实例配置列表,且由插件托管进程统一管理宿主程序各实例对插件单实例的访问,从而无需插件自身判断是否要求单实例,降低了插件开发者的负担,提高了系统的可管理性。
请参考图3,为申请实施例三装置结构框图,所述装置运行于客户端,可以包括:
获知单元301,用于获知启动的一个宿主程序实例要加载插件,所述宿主程序支持至少一个实例;
第一获取单元302,用于获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;
判断单元303,用于根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;
第二获取单元304,用于若所述要加载的插件要求启动单实例,从插件托管进程获取插件的通讯接口,所述插件托管进程用于管理所述宿主程序的实例对要求启动单实例的插件的访问;
执行单元305,用于利用所述插件的通讯接口对所述要加载的插件执行加载操作。
可以看出,在本申请实施例中,第一获取单元要获取一个插件单实例配置列表,当宿主程序的实例要加载的插件是要求单实例的插件时,第二获取单元插件托管进程获取插件的通讯接口,宿主程序的实例可以利用插件的通讯接口对要加载的插件执行加载操作。由于要加载的插件要求单实例,因此,宿主程序的各实例加载的均是该插件的同一个实例,从而减少了对系统资源的占用,提高了系统性能。
请参考图4,为本申请实施例四装置结构框图,在图3的基础上,还可以包括:
检查单元401,用于在所述第二获取单元304执行操作之前,检查操作系统中是否存在所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识;
启动单元402,用于当所述检查单元401检查出所述操作系统中存在所述插件托管进程时,启动所述插件托管进程。
请求单元403,用于在所述启动单元402执行操作之后,向所述插件托管进程请求加载所述要加载的插件;
所述插件托管进程判断所述要加载的插件是否已被创建,若是,向所述第二获取单元返回所述插件的通讯接口,否则创建所述要加载的插件,并向所述第二获取单元返回所述插件的通讯接口。
创建单元404,用于当所述检查单元401检查出所述操作系统中不存在所述插件托管进程时,使用标准应用程序编程接口创建所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识。
通知单元405,用于在所述执行单元305执行操作之后,当所述启动的一个实例退出运行后,通知所述插件托管进程删除退出运行的实例。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。
Claims (12)
1.一种加载插件的方法,其特征在于,所述方法包括:
宿主程序获知启动的一个实例要加载插件,所述宿主程序支持至少一个实例;
所述宿主程序获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;
所述宿主程序根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;
若所述要加载的插件要求启动单实例,所述宿主程序从插件托管进程获取插件的通讯接口,所述插件托管进程至少用于管理所述宿主程序的实例对要求启动单实例的插件的访问;
所述启动的一个实例利用所述插件的通讯接口对所述要加载的插件执行加载操作;
在所述宿主程序从插件托管进程获取插件的通讯接口之前,所述方法还包括:
所述宿主程序检查操作系统中是否存在所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识,若是,则所述宿主程序启动所述插件托管进程。
2.根据权利要求1所述的方法,其特征在于,所述插件单实例配置列表由服务器或者客户端创建。
3.根据权利要求1所述的方法,其特征在于,在所述宿主程序启动所述插件托管进程之后,所述方法还包括:
所述宿主程序向所述插件托管进程请求加载所述要加载的插件。
4.根据权利要求3所述的方法,其特征在于,在所述宿主程序向所述插件托管进程请求加载所述要加载的插件之后,所述方法还包括:
所述插件托管进程判断所述要加载的插件是否已被创建,若是,向所述宿主程序返回所述插件的通讯接口,否则创建所述要加载的插件,并向所述宿主程序返回所述插件的通讯接口。
5.根据权利要求1所述的方法,其特征在于,若所述操作系统中不存在所述插件托管进程,则所述宿主程序使用标准应用程序编程接口创建所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识。
6.根据权利要求1所述的方法,其特征在于,在所述启动的一个实例利用所述插件句柄对所述要加载的插件执行加载操作之后,所述方法还包括:
当所述启动的一个实例退出运行后,所述宿主程序通知所述插件托管进程删除退出运行的实例。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:当计数器的值大于预置门限时,所述插件托管进程结束所管理的所有插件的运行。
8.根据权利要求1所述的方法,其特征在于,所述通讯接口为COM接口。
9.一种加载插件的装置,其特征在于,所述装置运行于客户端,所述装置包括:
获知单元,用于获知启动的一个宿主程序实例要加载插件,所述宿主程序支持至少一个实例;
第一获取单元,用于获取插件单实例配置列表,所述插件单实例配置列表至少包括要求启动单实例的插件的信息;
判断单元,用于根据所述插件单实例配置列表判断要加载的插件是否要求启动单实例;
第二获取单元,用于若所述要加载的插件要求启动单实例,从插件托管进程获取插件的通讯接口,所述插件托管进程用于管理所述宿主程序的实例对要求启动单实例的插件的访问;
执行单元,用于利用所述插件的通讯接口对所述要加载的插件执行加载操作;
检查单元,用于在所述第二获取单元执行操作之前,检查操作系统中是否存在所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识;
启动单元,用于当所述检查单元检查出所述操作系统中存在所述插件托管进程时,启动所述插件托管进程。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
请求单元,用于在所述启动单元执行操作之后,向所述插件托管进程请求加载所述要加载的插件;
所述插件托管进程判断所述要加载的插件是否已被创建,若是,向所述第二获取单元返回所述插件的通讯接口,否则创建所述要加载的插件,并向所述第二获取单元返回所述插件的通讯接口。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
创建单元,用于当所述检查单元检查出所述操作系统中不存在所述插件托管进程时,使用标准应用程序编程接口创建所述插件托管进程,所述插件托管进程由所述要加载的插件的ID进行标识。
12.根据权利要求9所述的装置,其特征在于,所述装置还包括:
通知单元,用于在所述执行单元执行操作之后,当所述启动的一个实例退出运行后,通知所述插件托管进程删除退出运行的实例。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910206082.4A CN102043645B (zh) | 2009-10-20 | 2009-10-20 | 一种加载插件的方法及装置 |
HK11105882.7A HK1152127A1 (en) | 2009-10-20 | 2011-06-10 | Method and device for loading plug-ins |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910206082.4A CN102043645B (zh) | 2009-10-20 | 2009-10-20 | 一种加载插件的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102043645A CN102043645A (zh) | 2011-05-04 |
CN102043645B true CN102043645B (zh) | 2014-01-08 |
Family
ID=43909803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910206082.4A Expired - Fee Related CN102043645B (zh) | 2009-10-20 | 2009-10-20 | 一种加载插件的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102043645B (zh) |
HK (1) | HK1152127A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365674B (zh) * | 2012-03-31 | 2018-05-11 | 腾讯科技(深圳)有限公司 | 一种基于移动终端的插件管理方法、装置和系统 |
CN103139643B (zh) * | 2013-01-30 | 2016-02-03 | 深圳市同洲电子股份有限公司 | 一种应用程序的启动方法和数字电视终端 |
CN104021016B (zh) * | 2014-06-13 | 2017-04-12 | 北京奇虎科技有限公司 | 加载浏览器插件图标的方法及浏览器 |
CN104978214B (zh) * | 2014-09-05 | 2019-10-22 | 腾讯科技(深圳)有限公司 | 一种组件加载方法、装置及终端 |
US9967309B2 (en) * | 2014-10-06 | 2018-05-08 | Microsoft Technology Licensing, Llc | Dynamic loading of routes in a single-page application |
CN105260204A (zh) * | 2015-09-28 | 2016-01-20 | 北京奇虎科技有限公司 | 进程内工程交互方法和装置 |
CN107773984B (zh) * | 2016-08-26 | 2021-01-26 | 深圳市贰陆陆科技有限公司 | 棋牌类游戏加载方法及棋牌类游戏系统 |
CN111443959B (zh) * | 2020-03-27 | 2023-04-25 | 北京金山云网络技术有限公司 | 任务的执行方法、装置和服务器 |
CN112822115B (zh) * | 2020-12-31 | 2022-09-16 | 罗普特科技集团股份有限公司 | 一种基于插件式引擎的服务框架构建方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1659547A (zh) * | 2002-04-08 | 2005-08-24 | 甲骨文国际公司 | 具有可插入体系结构的键值仓库 |
CN101464805A (zh) * | 2008-12-24 | 2009-06-24 | 中兴通讯股份有限公司 | 一种插件管理方法及其系统 |
-
2009
- 2009-10-20 CN CN200910206082.4A patent/CN102043645B/zh not_active Expired - Fee Related
-
2011
- 2011-06-10 HK HK11105882.7A patent/HK1152127A1/xx not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1659547A (zh) * | 2002-04-08 | 2005-08-24 | 甲骨文国际公司 | 具有可插入体系结构的键值仓库 |
CN101464805A (zh) * | 2008-12-24 | 2009-06-24 | 中兴通讯股份有限公司 | 一种插件管理方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102043645A (zh) | 2011-05-04 |
HK1152127A1 (en) | 2012-02-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102043645B (zh) | 一种加载插件的方法及装置 | |
US20210133002A1 (en) | Using scripts to bootstrap applications with metadata from a template | |
US9467502B2 (en) | Method, client and cloud server for realizing complex software service | |
US20190052525A1 (en) | Intelligent role selection for dual-role devices | |
US20190207823A1 (en) | Dynamic delivery of software functions | |
CN110389936A (zh) | 一种启动小程序的方法、设备和计算机存储介质 | |
CN103748553A (zh) | 客户端的操作状态信息在远程桌面会话中的显示 | |
CN109218393B (zh) | 一种推送的实现方法、装置、设备和计算机存储介质 | |
EP3387816B1 (en) | Connecting and retrieving security tokens based on context | |
CN111580882A (zh) | 应用程序启动方法、装置、计算机系统和介质 | |
CN107045452B (zh) | 虚拟机调度方法和装置 | |
CN110365839B (zh) | 关机方法、装置、介质及电子设备 | |
CN109697166B (zh) | 一种测试数据准备方法及相关装置 | |
CN117319476A (zh) | 多系统终端的实施方法、服务端、应用能力端及系统 | |
CN114428691A (zh) | 应用调用方法、装置、电子设备和计算机可读存储介质 | |
CN112667441A (zh) | 基于容错功能的业务模块调度方法、系统及存储介质 | |
CN110069299A (zh) | 实现app程序运行控制的方法、服务器及存储介质 | |
CN117519964B (zh) | 数据库资源管理方法和系统、电子设备及存储介质 | |
EP4428675A1 (en) | Cloud technology-based graphic program online development method and system, and related device | |
CN110908958B (zh) | 一种文件处理方法、装置、终端及存储介质 | |
CN113778350A (zh) | 一种日志打印方法和装置 | |
CN117762413A (zh) | 渲染应用程序的页面的方法及相关设备 | |
CN115048596A (zh) | 页面加载方法、装置、设备、介质及程序产品 | |
WO2022246542A1 (en) | Developing software products using reusable code artifacts | |
CN115061828A (zh) | 一种交互方法、交互装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1152127 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1152127 Country of ref document: HK |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140108 Termination date: 20191020 |