发明名称 swf文件中外部链接的去除方法
摘要 本发明提供一种swf文件中外部链接的去除方法,包括:读取源swf文件;对所述源swf文件进行解析,定位到常量池;对常量池进行解析,获取所述常量池中存储的各个字符串;判断各个所述字符串中是否存在外部链接字符串,如果判断结果为是,则执改变所述常量池中存储的与所述外部链接字符串对应的字符串的值,使其失效,得到不包含外部链接的swf文件。在不需要整个swf文件的全部源代码的情况下,通过修改原外部链接使其失效,从而方便的去除swf文件中的外部链接,增强了用户使用swf文件的用户体验。
申请公布号 CN102890630B 申请公布日期 2015.08.26
申请号 CN201210313204.1 申请日期 2012.08.29
申请人 四三九九网络股份有限公司 发明人 张魁
分类号 G06F9/44(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 北京市盛峰律师事务所 11337 代理人 赵建刚
主权项 一种swf文件中外部链接的去除方法,其特征在于,包括以下步骤:S1,读取源swf文件;S2,对所述源swf文件进行解析,定位到所述源swf文件中的DoABC标签;S3,对所述DoABC标签进行解析,定位到所述DoABC标签中的ABCData数据体;S4,对所述ABCData数据体进行解析,定位到所述ABCData数据体中的常量池;S5,对所述常量池进行解析,获取所述常量池中存储的各个字符串;S6,判断各个所述字符串中是否存在外部链接字符串,如果判断结果为是,则执行S7;如果判断结果为否,则得到所述源swf文件中不存在外部链接的结论,并结束流程;S7,改变所述常量池中存储的与所述外部链接字符串对应的字符串的值,使其失效,得到不包含外部链接的swf文件;其中,S2具体为:对所述源swf文件进行解析,获取所述源swf文件中文件头的长度值以及位于所述DoABC标签之前的各个标签的长度值;对所述文件头的长度值以及位于所述DoABC标签之前的各个标签的长度值进行求和计算,获得所述DoABC标签的位置值;根据所述DoABC标签的位置值直接定位到所述DoABC标签;其中,S3具体为:对所述DoABC标签进行解析,得到所述DoABC标签的结构;所述DoABC标签的结构包括标签文件头、DoABC属性标志、标签名称和ABCData数据体;获取所述标签文件头的长度值、所述DoABC属性标志的长度值和所述标签名称的长度值;对所述标签文件头的长度值、所述DoABC属性标志的长度值和所述标签名称的长度值进行求和计算,获得所述ABCData数据体的位置值;根据所述ABCData数据体的位置值直接定位到所述ABCData数据体;其中,S4具体为:对所述ABCData数据体进行解析,获取所述ABCData数据体中位于所述常量池之前的数据长度值;根据所述数据长度值直接定位到所述ABCData数据体中的常量池;其中,S6中,所述外部链接字符串为navigateTo URL字符串;S7之后,还包括:S8,存储所述不包含外部链接的swf文件。
地址 361008 福建省厦门市厦门火炬高新区软件园二期望海路2号楼202室