[发明专利]一种跨语言转换网络数据包定义文件的处理系统及方法在审
申请号: | 201510359949.5 | 申请日: | 2015-06-25 |
公开(公告)号: | CN105005496A | 公开(公告)日: | 2015-10-28 |
发明(设计)人: | 杨潇;黄剑;李炽安;钟柱亮;赖昌灏 | 申请(专利权)人: | 桂林力港网络科技有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 周玉红 |
地址: | 541000 广西*** | 国省代码: | 广西;45 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 语言 转换 网络 数据包 定义 文件 处理 系统 方法 | ||
本发明涉及一种跨语言转换网络数据包定义文件的处理系统,包括将网络数据包定义文件解析生成各个不同类型的分析代码的解析模块、获取分析代码中的定义参数的获取模块和字符串格式化进行代码转换生成目标语言的定义文件的语言转换模块;本发明还涉及一种跨语言转换网络数据包定义文件的处理方法;本发明针对结构体网络数据包定义文件需用人力手工转换为目标语言的定义文件的问题,提供了一种可自动化地完成这一转换过程的处理系统,以供目标语言与旧有的网络数据包结构体(基于C/C++的网络数据包定义文件)进行转换,该处理系统速度快,转换准确,不需人工参与,节省了开发人员的时间,降低了此类互联网软件客户端的开发成本,提高了开发效率。
技术领域
本发明涉及计算机编程语言以及计算机网络通讯领域,尤其涉及一种跨语言转换网络数据包定义文件的处理系统及方法。
背景技术
目前计算机软件业界已有多种跨计算机编程语言、跨平台的网络通讯协议,但仍有不少运营中的旧有计算机服务器软件,在使用传统的直接通过网络传输C/C++结构体内存数据的方法。这种方法速度快、效率高,在相同平台、相同编译配置所生成的C/C++程序间使用起来非常方便,因此在PC游戏盛行的时期曾被大量使用。
目前,我国已经进入了移动互联网时代,大量移动互联网游戏软件客户端已不再直接使用C/C++来进行游戏业务的编写,而是使用起了更方便、更易用的脚本语言,如Lua语言、JavaScript语言等。但旧有的服务器软件仍在线上运营中,新的移动互联网软件客户端需要与这些旧有的服务器软件相通讯;这些旧有的服务器软件使用直接传输C/C++结构体内存数据的通讯方法,通过C/C++结构体来描述网络数据包的定义,而其它编程语言无法直接使用这些结构体定义。要在新的移动互联网软件客户端的Lua、JavaScript等脚本语言中收发C/C++结构体内存数据网络包,就需要将C/C++结构体及其在特定结构成员对齐方式下各成员变量的内存偏移量、长度等数据转换为相应的脚本语言定义,以供脚本语言使用。而这一转换过程此前是由人力手工完成的,不仅耗时耗力,而且容易出错。
发明内容
本发明所要解决的技术问题是提供一种跨语言转换网络数据包定义文件的处理系统及方法,针对结构体网络数据包定义文件需用人力手工转换为目标语言的定义文件的问题,提供了一种可自动化地完成这一转换过程的处理系统及方法。
本发明解决上述技术问题的技术方案如下:一种跨语言转换网络数据包定义文件的处理系统,包括解析模块、获取模块和语言转换模块,
所述解析模块,用于将网络数据包定义文件解析生成各个不同类型的分析代码;
所述获取模块,用于对各个不同类型的分析代码进行编译生成可执行文件,再执行所述可执行文件来获取分析代码中的定义参数;
所述语言转换模块,用于将获取的定义参数通过字符串格式化进行代码转换,生成目标语言的定义文件。
字符串格式化是指把字符串(即文本)、数字(整数、浮点数等)等元素,按照一定的格式(即整数输出、取N位小数输出、十六进制输出等格式),组合成一个完整的代码转换格式,使系统处理数据的时候运行速度快速。
本发明的有益效果是:针对结构体网络数据包定义文件需用人力手工转换为目标语言的定义文件的问题,提供了一种可自动化地完成这一转换过程的处理系统,以供目标语言与旧有的网络数据包结构体(基于C/C++的网络数据包定义文件)进行转换,该处理系统速度快,转换准确,不需人工参与,节省了开发人员的时间,降低了此类互联网软件客户端的开发成本,提高了开发效率。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述网络数据包定义文件包括宏定义内容、枚举类型定义内容和结构体定义内容。
进一步,所述各个不同类型的分析代码包括宏定义分析代码、枚举类型分析代码和结构体分析代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于桂林力港网络科技有限公司,未经桂林力港网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510359949.5/2.html,转载请声明来源钻瓜专利网。