首页> 中国专利> 监控软件许可证的方法、装置、计算机设备和存储介质

监控软件许可证的方法、装置、计算机设备和存储介质

摘要

本申请涉及一种监控软件许可证的方法及其装置。方法包括:获取软件许可证的技术参数;从技术参数中提取出标准格式数据并对应当前时刻进行存储;基于所有时刻存储的标准格式数据,形成标准格式数据的变化曲线;将变化曲线和当前时刻存储的标准格式数据输出至显示设备,以对软件许可证进行监控,然后对软件许可证到期的用户发出预警信号。采用本申请的方法能够对有可能出现的不同的许可证的类型采取对应的方法提取所需的数据,然后将许可证数据整合起来集中显示,方便管理者对软件的许可证文件进行监控,并且判断软件的许可证有效期是否到期,如果到期则向用户发出报警信号,可以避免授权用户因为忘记追加许可有效期而使软件无法使用的问题。

著录项

说明书

技术领域

本申请涉及软件许可技术领域,特别是涉及一种监控软件许可证的方法、装置、计算机设备和存储介质。

背景技术

随着计算机软件技术的发展,为了保障软件开发商的知识产权权益,会向用户发放软件许可文件,使软件用户按照约定的方式行使软件的使用权。

传统技术中,软件业务的范围各自独立,不同的软件厂商使用不同类型的软件许可证来管理软件。

然而,传统技术中使用不同类型的软件许可证来管理软件,不同类型的软件许可证之间存在数据隔离,形成了一个个数据孤岛,不同类型的软件许可证的数据监控不方便。

发明内容

基于此,有必要针对上述技术问题,提供一种能够将不同类型的许可证的软件数据整合起来监控的监控软件许可证的方法、装置、计算机设备和存储介质。

一种监控软件许可证的方法,所述方法包括:获取软件许可证的技术参数;从所述技术参数中提取出标准格式数据并对应当前时刻进行存储;基于所有时刻存储的标准格式数据,形成所述标准格式数据的变化曲线;将所述变化曲线和当前时刻存储的标准格式数据输出至显示设备,以对所述软件许可证进行监控。

在其中一个实施例中,所述获取软件许可证的技术参数,包括:每隔固定时间采集一次软件许可证的技术参数;将所述技术参数存放到数据库中。

在其中一个实施例中,所述从所述技术参数中提取出标准格式数据并对应当前时刻进行存储,包括:确定所述技术参数的许可证类型;根据所述技术参数的许可证类型,采用对应的指令提取所述标准格式数据;将所述标准格式数据存储在数据库中。

在其中一个实施例中,所述许可证类型包括,FlexNet许可证类型、LM-X许可证类型、Sentinel HASP许可证类型、RLM许可证类型中的至少一种。

在其中一个实施例中,所述技术参数包括软件许可证的数量、软件许可证的有效期限、软件许可证所绑定计算机的硬件信息、软件许可证的运行状态、软件许可证的守护进程、软件许可证的文件存放目录、软件许可证的版本、软件许可证的获取时间、软件许可证已使用的数量和软件许可证未使用的数量。

在其中一个实施例中,所述标准格式数据包括:软件许可证的有效期限,软件许可证的运行状态,软件许可证已使用的数量和软件许可证未使用的数量。

在其中一个实施例中,所述方法还包括:若软件许可证的许可有效期小于有效期报警阈值,则发出报警信号。

一种监控软件许可证的装置,包括:

数据采集模块,用于获取软件许可证的技术参数;

数据提取模块,用于从所述技术参数中提取出标准格式数据并对应当前时刻进行存储;

数据分析模块,用于基于所有时刻存储的标准格式数据,形成所述标准格式数据的变化曲线;

数据展示模块,用于显示所述变化曲线和当前时刻存储的标准格式数据,以对所述软件许可证进行监控。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取软件许可证的技术参数;

从所述技术参数中提取出标准格式数据并对应当前时刻进行存储;

基于所有时刻存储的标准格式数据,形成所述标准格式数据的变化曲线;

将所述变化曲线和当前时刻存储的标准格式数据输出至显示设备,以对所述软件许可证进行监控。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取软件许可证的技术参数;

从所述技术参数中提取出标准格式数据并对应当前时刻进行存储;

基于所有时刻存储的标准格式数据,形成所述标准格式数据的变化曲线;

将所述变化曲线和当前时刻存储的标准格式数据输出至显示设备,以对所述软件许可证进行监控。

上述监控软件许可证的方法、装置、计算机设备和存储介质,通过获取软件许可证的技术参数,从软件许可证的技术参数中提取出所需的标准格式的数据并且对应当前时刻进行存储,基于所有时刻存储的标准格式的数据,形成标准格式数据的变化曲线,并在显示设备上显示标准格式数据的变化曲线和当前时刻的标准格式数据。这样提取出标准格式数据进行整合并显示,能够将不同类型的许可证的数据整合起来集中显示,方便管理者对软件许可证数据进行监控。

附图说明

为了更清楚地说明本申请实施例或传统技术中的技术方案,下面将对实施例或传统技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为一个实施例中监控软件许可证的方法的应用环境图;

图2为一个实施例中监控软件许可证的方法的流程图;

图3为一个实施例中提取标准格式数据的方法的流程图;

图4为一个实施例中变化曲线的示意图;

图5为一个实施例中许可证到期时间监控的示意图;

图6为一个实施例中监控软件许可证的装置的结构框图;

图7为一个实施例中计算机设备的内部结构图;

图8为一个实施例中许可证运行状态图;

图9为一个实施例中实时用户状态图。

具体实施方式

为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的实施例。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使本申请的公开内容更加透彻全面。

除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。

在一个实施例中,本申请提供的监控软件许可证的方法,可以应用于如图1所示的应用环境中。其中,许可证服务器601通过网络607与许可证用户端602到606通信连接,网络607可以是局域网。

在一个实施例中,如图2所示,提供了一种监控软件许可证的方法,包括:

步骤S100,获取软件许可证的技术参数。

其中,技术参数包括软件许可证的数量、软件许可证的有效期限、软件许可证所绑定计算机的硬件信息、软件许可证的运行状态、软件许可证的实时用户、软件许可证的守护进程、软件许可证的文件存放目录、软件许可证的版本、软件许可证的获取时间、软件许可证已使用的数量和软件许可证未使用的数量。

步骤S110,从技术参数中提取出标准格式数据并对应当前时刻进行存储。

其中,标准格式数据包括软件许可证的有效期限,软件许可证的运行状态,软件许可证已使用的数量和软件许可证未使用的数量。

步骤S120,基于所有时刻存储的标准格式数据,形成标准格式数据的变化曲线。

步骤S130,将变化曲线和当前时刻存储的标准格式数据输出至显示设备,以对软件许可证进行监控。

上述监控软件许可证的方法,获取许可证的技术参数,然后提取出标准格式的数据并且对应时刻进行存储,然后基于所有时刻存储的标准格式的数据,形成标准格式数据的变化曲线,在显示设备上显示标准格式数据的变化曲线和当前时刻的标准格式数据,通过提取出标准格式数据进行整合并显示的方法,从而能够将不同类型的许可证数据整合起来集中显示,方便管理者对软件的许可证文件进行监控。

在一个实施例中,步骤S100包括:

步骤S200,每隔固定时间采集一次软件许可证的技术参数。

示例性地,若软件提供心跳时长,则根据心跳时长来设置固定时间。

其中,许可证客户端和许可证服务器之间建立连接之后,如果没有进行数据交互,就需要通过心跳检测确认对方是否存在,许可证客户端向许可证服务器每隔规定的时间发放一个心跳包,许可证服务器接收心跳包后会自动继续发放许可,保持两者之间的连接状态;如果许可证服务器在规定时间内没有收到许可证客户端的心跳包,就回收许可证。这个规定的时间为心跳时长。

示例性地,若软件未提供心跳时长,则按照预设的固定时长来设置固定时间。

示例性地,通过软件的通讯接口和命令行接口来采集软件许可证的技术参数。

示例性地,使用开源OCS NG(Open Computer and Software Inventory NextGeneration,系统管理软件)采集软件许可证的技术参数。

步骤S202,将采集到的技术参数存放到数据库中。

在本实施例中,通过设定固定的时间间隔来采集软件许可证的技术参数并将其存放到数据库中,获得了对应时刻的许可证技术参数。

在其中一个实施例中,如图3所示,步骤S110包括:

步骤S1101,判断技术参数的许可证类型。

示例性地,软件许可证的类型包括FlexNet、LM-X、Sentinel HASP、RLM中的至少一种。

示例性地,该步骤S1101包括:确定技术参数中的软件许可证的守护进程;根据守护进程,确定技术参数的许可证类型。其中,不同的软件许可证的守护进程对应不同的许可证类型。

例如,如下表一所示,不同的软件许可证守护进程对应不同的许可证类型,通过查看技术参数中的软件许可证守护进程,可以判断该技术参数使用的许可证类型。

表一软件许可证守护进程与软件许可证类型的对应关系表

其中,FlexNet是Flexera Software公司旗下的产品,是软件行业中最受欢迎的许可证类型,属于最典型的浮动许可证。根据不完全统计,大型设计软件中约有1/3采用FlexNet。FlexNet提供Windows版和Linux版。Windows版本的许可证管理器常用图形界面进行许可证的维护和管理。图形界面具有简单直观,易维护的优点。FlexNet除了图形界面之外,还自带命令行工具lmutil。lmutil可以查询许可证数据,监控许可证实时运行状态。Linux命令丰富,可通过脚本将需要的信息保存为文本,缓存进数据库,后面再进行再次分析和处理。

LM-X是X-Formation公司的旗下产品。LM-X提供Windows版和Linux版。Windows版的LM-X许可证管理器提供图形界面和命令行界面进行许可证的管理。Linux版的LM-X许可证管理器仅提供命令管理方式。LM-X除了图形界面之外,还自带命令行工具lmxendutil。lmxendutil可以查询许可证数据,监控许可证实时运行状态。Linux命令丰富,可通过脚本将需要的信息保存为文本,缓存进数据库,后面再进行再次分析和处理。

Sentinel HASP(圣天诺许可证类型),是Saftnet公司的旗下产品。Sentinel HASP目前仅支持Windows平台。Sentinel HASP优点是安装和维护简易,可以在一台设备上查看多台服务器上的同类型的许可证使用情况。Sentinel HASP缺点是功能简单,加密锁以锁ID显示,不能直观显示软件的名称。Sentinel HASP缺少命令行工具。

RLM(Reprise License Manager,重复许可证管理)提供Windows版本和Linux版本。Windows版的RLM提供WEB图形界面和命令行的两种方式进行许可管理。RML除了图形界面之外,还自带命令行工具Rlmutil。Rlmutil可以查询许可证数据,监控许可证实时运行状态。Linux命令丰富,可通过脚本将需要的信息保存为文本,缓存进数据库,后面再进行再次分析和处理。

步骤S1102,对应不同类型的许可证技术参数,采用对应的指令提取标准格式数据。

示例性地,对于FlexNet类型的许可证技术参数,使用FlexNet的许可证管理器自带的命令行工具lmutil,在命令行工具中输入指令:lmutil lmstat-a-cPORT@HOST,后面加上目标软件的端口号和服务器名称,可以查看该软件的许可证技术参数;然后使用shell(计算机壳层)脚本从许可证技术参数中提取出标准格式数据。

例如,使用指令lmutil lmstat-a-c POST@HOST|grep"Users of VISUAL_FULLSTS:"|awk'{printf"issued:"$6"used:"$11}';可以提取目标软件中的“VISUAL_FULLSTS”这个模块的许可证的数量和当前使用数量的信息。

示例性地,对于LM-X类型的许可证数据,使用LM-X的许可证管理器自带的命令行工具lmxendutil,在命令行工具中输入指令:lmxendutil-licstat-host HOST-port PORT,后面加上目标软件的端口号和服务器名称,可以查看该软件的许可证技术参数;然后使用shell(计算机壳层)脚本从许可证技术参数中提取出标准格式数据。

例如,使用指令lmxendutil-licstat-host HOST-port PORT|grep"Users ofVISUAL_FULLSTS:"|awk'{printf"issued:"$6"used:"$11}';可以提取目标软件中的“VISUAL_FULLSTS”这个模块的许可证的数量和当前使用数量的信息。

示例性地,对于Sentinel HASP类型的许可证技术参数,因为Sentinel HASP没有命令行工具,所以采集Sentinel HASP类型的许可证技术参数的日志文件,并将日志文件存入数据库中,然后从数据库中查看许可证技术参数;并使用shell(计算机壳层)脚本从许可证技术参数中提取出标准格式数据。

例如,使用指令:EGREP STAT LIC_LOG|AWK`BEGIN{FN=””}{PRINT$LICENESERVER,$TOTAL,$USEAGE};可以查看目标软件的所有技术参数,然后使用指令:grep"Users of VISUAL_FULLSTS:"|awk'{printf"issued:"$6"used:"$11}';可以提取目标软件中的“VISUAL_FULLSTS”这个模块的许可证的数量和当前使用数量的信息。

示例性地,对于RML类型的许可证技术参数,使用RML的许可证管理器自带的命令行工具Rlmutil,在命令行工具中输入指令:rlmutil rlmstat-cPOST@HOST-l ISV,后面加上目标软件的端口号和服务器名称,可以查看该软件的许可证技术参数;然后使用shell(计算机壳层)脚本从许可证技术参数中提取出标准格式数据。

例如,使用指令rlmutil rlmstat-c POST@HOST-l ISV|grep"Users of VISUAL_FULLSTS:"|awk'{printf"issued:"$6"used:"$11}';可以提取目标软件中的“VISUAL_FULLSTS”这个模块的许可证的数量和当前使用数量的信息。

在本实施例中,对于采用对应的指令提取到的数据,通过程序代码块Fomat.java(数据格式化模块)将提取到的数据转化为许可证的标准格式数据表和许可证运行状态表。

例如,如下表2所示,表2为许可证的标准格式数据表。

表二许可证标准格式数据表

例如,如下表3所示,表3为许可证运行状态表。

表三许可证运行状态表

步骤S1103,将标准格式数据存储在数据库中。

在本实施例中,通过不同的许可证类型对应的许可证技术参数中的许可证的守护进程不同来判断许可证技术参数的类型,然后对于不同类型的许可证技术参数,采用对应的方法来提取出所需的标准格式数据,并将标准格式数据存储在数据库中,通过提取出标准格式数据进行整合并显示的方法,从而能够将不同类型的许可证的数据整合起来集中显示,方便管理者对软件的许可证文件进行监控。

在其中一个实施例中,步骤S120包括:

步骤S1201,从数据库中提取标准格式数据。

示例性地,利用JAVA编程语言,使用JDBC(Java DataBase Connectivity,java数据库连接)连接数据库,读取标准格式数据。

示例性地,通过程序代码块Monitor.java(数据监控模块)读取表2、表3、表4并进行展示。

例如,如下表4所示,表4为基础人员信息表。

表四基础人员信息表

例如,如图8为一个实施例中许可证运行状态图,图9为一个实施例中实时用户状态图。

步骤S1202,以标准格式数据的时间和值作为绘图的X轴和Y轴,利用可视化绘图工具对标准格式数据进行绘图,得到标准格式数据的变化曲线。

例如,图4为一段时间内软件使用许可证的数量和时间的变化曲线图,根据图4,管理者可以监控该软件一段时间内使用许可证的情况。

示例性地,利用python及第三方的数据处理插件NumPy、数据分析插件SciPy以及绘图插件matplotlib,对标准格式数据进行处理,并且进行变化曲线图绘制。

示例性地,NumPy是一个用python实现的科学计算包,SciPy是包括统计、优化、整合、线性代数模块的专为科学和工程设计的Python工具包,matplotlib是一个以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的2D绘图库。需要说明的是,Numpy可换成pandas库对数据进行处理。

示例性地,利用RRDTOOL(Round Robin Database Tool,轮循数据库绘图工具)进行变化曲线图绘制。RRDTOOL(Round Robin Database Tool,轮循数据库绘图工具)是一个开源绘图工具,包括其自带的RDD数据库,可以将标准格式的数据的时间序列以曲线的方式展现。

在本实施例中,提取出标准格式数据的值和时间,并且建立标准格式数据和时间之间的变化曲线,对变化曲线图进行绘制,将标准格式的数据可视化成图像的形式,以便于更方便的对软件的许可证文件进行监控。

在其中一个实施例中,步骤S130包括:

步骤S1301,在显示设备上显示变化曲线和当前时刻存储的标准格式数据。

示例性地,使用浏览器显示变化曲线和当前时刻存储的标准格式数据,根据浏览器实时显示的当前时刻的标准格式数据来监控软件许可证的运行状态,根据变化曲线来监控许可证一段时间内的使用情况。

步骤S1302,使用显示设备上显示的变化曲线和当前时刻存储的标准格式数据对软件使用情况及运行状态进行监控。

例如,图5为软件许可证的到期时间的监控图,管理者根据图5所示的内容可以监控软件的许可证的到期时间。

在本实施例中,若许可证服务器根据标准格式数据判断软件许可证的许可有效期小于有效期报警阈值时,则发出报警信号。

示例性地,报警信号可以是短信或者邮件。

示例性地,根据许可有效期将许可划分为不同类型,例如,许可有效期为20年以上的为永久许可,许可有效期少于20年的为正式许可,许可有效期少于90天的为试用许可等,以便于对不同许可类型的授权客户进行管理。

在本实施例中,通过浏览器来显示软件许可证的标准格式的数据的变化曲线和当前数值,并且判断其中的许可证有效期是否到期,如果到期则向用户发出报警信号,可以方便管理者对软件的许可证文件进行监控,并且避免授权用户因为忘记追加许可有效期而使软件无法使用的问题。

应该理解的是,虽然图2和图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图6所示,提供了一种监控软件许可证的装置,该装置可以用于各种应用系统中,例如办公系统、管理系统等,这些应用系统可以装载于各种电子设备中,例如计算机、移动电话、个人数码助理(Personal Digital Assistant,PDA)等电子设备。该监控软件许可证的装置可以是运行于电子设备的软件单元、硬件单元或者软硬件相结合的单元,也可以作为独立的挂件集成到这些电子设备中或者运行于这些电子设备的应用系统中。该装置包括:数据采集模块901、数据提取模块902、数据分析模块903和数据展示模块904,其中:

数据采集模块901,用于获取软件许可证的技术参数。

数据提取模块902,用于从技术参数中提取出标准格式数据并对应当前时刻进行存储。

数据分析模块903,用于基于所有时刻存储的标准格式数据,形成标准格式数据的变化曲线。

数据展示模块904,用于显示变化曲线和当前时刻存储的标准格式数据,以对软件许可证进行监控。

关于监控软件许可证的装置的具体限定可以参见上文中对于监控软件许可证的方法的限定,在此不再赘述。上述监控软件许可证的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

在一个实施例中,数据采集模块901进一步包括:定时采集模块、存储模块,其中:

定时采集模块,用于每隔固定时间采集一次软件许可证的技术参数。

第一存储模块,用于将技术参数存放到数据库中。

在一个实施例中,数据提取模块902进一步包括:判断模块、提取模块、存储模块,其中:

判断模块,用于确定技术参数的许可证类型。

提取模块,用于根据技术参数的许可证类型,采用对应的指令提取标准格式数据。

第二存储模块,用于将标准格式数据存储在数据库中。

在一个实施例中,数据分析模块903进一步包括:调取模块、绘图模块,其中:

调取模块,用于从数据库中调取标准格式数据。

绘图模块,用于以标准格式数据的时间和值作为绘图的X轴和Y轴;利用可视化绘图工具对标准格式数据进行绘图,得到标准格式数据的变化曲线。

在一个实施例中,数据展示模块904进一步包括:展示模块、比较模块、预警模块,其中:

展示模块,用于在显示设备上显示变化曲线和当前时刻存储的标准格式数据。

比较模块,用于将标准格式数据中的许可证的许可有效期与有效期报警阈值进行比较。

预警模块,用于在软件许可证的许可有效期小于有效期报警阈值时,发出预警信号。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种监控软件许可证的方法。

本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提到的控制或者实现的切换功能都是通过控制器实现,控制单元可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static RandomAccess Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。

在本说明书的描述中,参考术语“有些实施例”、“其他实施例”、“理想实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特征包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性描述不一定指的是相同的实施例或示例。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号