一种文件源代码License控制方法及装置制造方法及图纸

技术编号:11466820 阅读:68 留言:0更新日期:2015-05-17 19:13
本发明专利技术实施例提供一种文件源代码License控制方法及装置,其中方法包括:生成License验证信息;确定文件源代码中需要插入所述License验证信息的位置;在所述位置插入所述License验证信息,以在调用所述位置的源代码时,进行License验证。本发明专利技术提升了软件的License控制深度。

【技术实现步骤摘要】
一种文件源代码License控制方法及装置
本专利技术涉及软件使用授权
,具体涉及一种文件源代码License(软件使用范围授权)控制方法及装置。
技术介绍
License控制是对软件使用范围授权的控制,为防止软件滥用及盗版,软件一般都有自己的License控制办法;为了保护软件的文件源代码,目前常用的License控制方式主要为:将文件源代码编译为二进制的PCODE代码,从而限制文件源代码未经授权的查看和修改。以MATLAB软件产品为例,当前MATLAB在科学计算、仿真建模、统计分析等领域应用特别广泛,基于MATLAB开发的工具包或产品也越来越多,对于基于MATLAB开发的工具包或产品,为了保护源代码,MATLAB提供了将源代码编译为二进制的PCODE代码的方法,以限制未经授权的查看、修改源代码。现有的文件源代码License控制方法,通过将文件源代码编译为二进制的PCODE代码,虽然能限制他人未经授权的查看、修改源代码;然而,无法限制他人使用软件产品的功能,只要将软件复制到任何一个可以正常运行软件的设备上,则软件均可以正常使用;可以看出,现有的文件源代码License控制方法的License控制深度并不高,无法起到防止软件滥用、保护软件开发成果的作用。
技术实现思路
有鉴于此,本专利技术实施例提供一种文件源代码License控制方法及装置,以解决现有文件源代码License控制方法的License控制深度并不高的问题。为实现上述目的,本专利技术实施例提供如下技术方案:一种文件源代码License控制方法,包括:生成License验证信息;确定文件源代码中需要插入所述License验证信息的位置;在所述位置插入所述License验证信息,以在调用所述位置的源代码时,进行License验证。其中,所述文件源代码License控制方法应用于MATLAB场景;所述文件源代码包括:函数文件对应的文件源代码,或,类文件对应的文件源代码,或脚本文件对应的文件源代码;所述确定文件源代码中需要插入所述License验证信息的位置包括:若在函数文件对应的文件源代码中插入所述License验证信息,则确定所述文件源代码中第一个以函数标识符为起始的行,将该行的下一行作为所述License验证信息的插入位置;若在类文件对应的文件源代码中插入所述License验证信息,则确定所述文件源代码中以类构造函数标识符为起始的行,将该行的下一行作为所述License验证信息的插入位置;若在脚本文件对应的文件源代码中插入所述License验证信息,则将所述脚本文件的第一行作为所述License验证信息的插入位置。其中,所述文件源代码License控制方法还包括:将所述License验证信息与字符串变量相对应。其中,所述在所述位置插入所述License验证信息包括:利用正则表达式匹配文件源代码中需要插入所述License验证信息的位置,在所述位置插入所述字符串变量。其中,所述文件源代码License控制方法还包括:以新名称,对插入所述License验证信息的文件源代码进行命名;所述新名称与所述文件源代码的原始名称不同。其中,一份文件夹内保存有多份源代码文件;所述在所述位置插入所述License验证信息包括:逐级调取所述文件夹下的对象,所述对象包括文件夹和源代码文件;若当前级调取的对象存在文件夹,则进入当前级文件夹,继续进行源代码文件调取;若当前级调取的对象存在源代码文件,则对所调取的源代码文件的源代码中需要插入所述License验证信息的位置,进行License验证信息的插入。其中,所述文件源代码License控制方法还包括:若所述文件源代码未经过编译,则在所述文件源代码插入所述License验证信息后,将插入所述License验证信息的文件源代码编译为PCODE二进制代码。本专利技术实施例还提供一种文件源代码License控制装置,包括:验证信息生成模块,用于生成License验证信息;插入位置确定模块,用于确定文件源代码中需要插入所述License验证信息的位置;插入模块,用于在所述位置插入所述License验证信息,以在调用所述位置的源代码时,进行License验证。其中,所述文件源代码License控制装置应用于MATLAB场景;所述文件源代码包括:函数文件对应的文件源代码,或,类文件对应的文件源代码,或脚本文件对应的文件源代码;所述插入位置确定模块包括:第一插入单元,用于若在函数文件对应的文件源代码中插入所述License验证信息,则确定所述文件源代码中第一个以函数标识符为起始的行,将该行的下一行作为所述License验证信息的插入位置;第二插入单元,用于若在类文件对应的文件源代码中插入所述License验证信息,则确定所述文件源代码中以类构造函数标识符为起始的行,将该行的下一行作为所述License验证信息的插入位置;第三插入单元,用于若在脚本文件对应的文件源代码中插入所述License验证信息,则将所述脚本文件的第一行作为所述License验证信息的插入位置。其中,所述文件源代码License控制装置还包括:对应模块,用于将所述License验证信息与字符串变量相对应;命名模块,用于以新名称,对插入所述License验证信息的文件源代码进行命名;所述新名称与所述文件源代码的原始名称不同;所述插入模块包括:变量插入单元,用于利用正则表达式匹配文件源代码中需要插入所述License验证信息的位置,在所述位置插入所述字符串变量;和/或,逐级调取单元,用于逐级调取文件夹下的对象,所述对象包括文件夹和源代码文件,一份文件夹内保存有多份源代码文件;继续调取单元,用于若当前级调取的对象存在文件夹,则进入当前级文件夹,继续进行源代码文件调取;插入执行单元,用于若当前级调取的对象存在源代码文件,则对所调取的源代码文件的源代码中需要插入所述License验证信息的位置,进行License验证信息的插入。基于上述技术方案,本专利技术实施例提供的文件源代码License控制方法,包括生成License验证信息;确定文件源代码中需要插入所述License验证信息的位置;在所述位置插入所述License验证信息,以在调用所述位置的源代码时,进行License验证。本专利技术实施例提供的文件源代码License控制方法,在软件的文件源代码的若干位置插入License验证信息,从而使得软件在使用时,需要进行License验证,使得不合法的用户无法进行软件使用,提升了软件的License控制深度。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例提供的文件源代码License控制方法的流程图;图2为本专利技术实施例提供的文件源代码License控制方法的另一流程图;图3为本专利技术实施例提供的插入License验证信息的方法流程图;图4为本专利技术实施例提供的文件源代码License控制方法的再一流程图;图5为本专利技术实施例提供的文件源代码License本文档来自技高网...
一种文件源代码License控制方法及装置

【技术保护点】
一种文件源代码License控制方法,其特征在于,包括:生成License验证信息;确定文件源代码中需要插入所述License验证信息的位置;在所述位置插入所述License验证信息,以在调用所述位置的源代码时,进行License验证。

【技术特征摘要】
1.一种文件源代码License控制方法,其特征在于,包括:生成License验证信息;所述License验证信息中可加入验证判断命令,以判断当前用户是否为合法用户;确定文件源代码中需要插入所述License验证信息的位置;在所述位置插入所述License验证信息,以在调用所述位置的源代码时,进行License验证,且在License验证通过后,所述位置的源代码才可调用执行。2.根据权利要求1所述的文件源代码License控制方法,其特征在于,所述文件源代码License控制方法应用于MATLAB场景;所述文件源代码包括:函数文件对应的文件源代码,或,类文件对应的文件源代码,或脚本文件对应的文件源代码;所述确定文件源代码中需要插入所述License验证信息的位置包括:若在函数文件对应的文件源代码中插入所述License验证信息,则确定所述文件源代码中第一个以函数标识符为起始的行,将该行的下一行作为所述License验证信息的插入位置;若在类文件对应的文件源代码中插入所述License验证信息,则确定所述文件源代码中以类构造函数标识符为起始的行,将该行的下一行作为所述License验证信息的插入位置;若在脚本文件对应的文件源代码中插入所述License验证信息,则将所述脚本文件的第一行作为所述License验证信息的插入位置。3.根据权利要求1或2所述的文件源代码License控制方法,其特征在于,还包括:将所述License验证信息与字符串变量相对应。4.根据权利要求3所述的文件源代码License控制方法,其特征在于,所述在所述位置插入所述License验证信息包括:利用正则表达式匹配文件源代码中需要插入所述License验证信息的位置,在所述位置插入所述字符串变量。5.根据权利要求4所述的文件源代码License控制方法,其特征在于,还包括:以新名称,对插入所述License验证信息的文件源代码进行命名;所述新名称与所述文件源代码的原始名称不同。6.根据权利要求1所述的文件源代码License控制方法,其特征在于,一份文件夹内保存有多份源代码文件;所述在所述位置插入所述License验证信息包括:逐级调取所述文件夹下的对象,所述对象包括文件夹和源代码文件;若当前级调取的对象存在文件夹,则进入当前级文件夹,继续进行源代码文件调取;若当前级调取的对象存在源代码文件,则对所调取的源代码文件的源代码中需要插入所述License验证信息的位置,进行License验证信息的插入。7.根据权利要求1所述的文件源代码License控制方...

【专利技术属性】
技术研发人员:余正宁徐秀峰罗喜霜
申请(专利权)人:北京润科通用技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1