[发明专利]一种基于动态库API拦截的数据采集方法及系统在审
申请号: | 201410083145.2 | 申请日: | 2014-03-07 |
公开(公告)号: | CN103902284A | 公开(公告)日: | 2014-07-02 |
发明(设计)人: | 崔培枝;刘海燕;孙岩;王青海;何国良;崔伟宁;吴迪;黄俊卿 | 申请(专利权)人: | 中国人民解放军装甲兵工程学院 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F17/30 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 李迪 |
地址: | 100072*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 动态 api 拦截 数据 采集 方法 系统 | ||
技术领域
本发明涉及数据采集技术领域,具体涉及一种基于动态库API拦截的数据采集方法及系统。
背景技术
数据采集(DAQ),是指从传感器和其它待测设备等模拟和数字被测单元中自动采集非电量或者电量信号,送到上位机中进行分析,处理。数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品来实现灵活的、用户自定义的测量系统。
而针对一个分布式信息系统,该系统为以“黑盒”系统,内部的运行机制未知,但若要通过获取系统运行过程中的关键信息,如各结点之间传递信息的概要信息,如信息源、信息目的地、信息内容及传递时间等,来分析系统间的交互行为,监控网络信息流向与动态情况,是本发明“数据采集方法”要关注的内容。但在现有技术中,并没有专门针对黑盒系统进行数据采集的方法。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供一种基于动态库API(Application Programming Interface,应用编程接口)拦截的数据采集方法及系统,能够通过拦截动态链接库的API来获取目标信息系统传输过程中的中间数据,并将采集到的数据存储到采集数据库,便于后续数据的分析和监控。
(二)技术方案
为了实现以上目的,本发明通过以下技术方案予以实现:
一种基于动态库API拦截的数据采集方法,该方法包括:
确定目标信息系统中将被替换的动态库及其位置;
编写与被替换动态库同名的新的替换动态库,在替换动态库中实现被替换动态库的API功能,并将被替换动态库更改为其它名字;
应用程序调用替换动态库的API,替换动态库获取目标信息系统处理或传输过程中的数据,并将数据发送给采集管理端;
采集管理端接收数据后,对其进行解析和处理后,写入采集数据库。
其中,所述确定目标信息系统中被替换动态库的位置,具体包括:
利用Windows资源管理器,在Windows系统目录和目标信息系统目录下搜索文件,文件名为被替换动态库的名字;
将所有搜索到的结果文件分别更名,重新启动处理或传输服务,若提示缺少此动态库,说明相应文件下的动态库即为被替换的目标动态库。
其中,所述编写与被替换动态库同名的新的替换动态库,具体包括:
若传输服务提供了二次开发接口的动态库及相应的LIB文件,且对应的头文件以API形式给出用于上层应用调用,则采用隐式链接或显式链接的方式接将被替换动态库的文件映射进调用线程的地址空间;
若传输服务没有提供二次开发接口,则利用反汇编工具找出被拦截动态库所提供的所有API函数名及完整的参数定义格式,在新的动态库中分别定义与原有API同名的函数及指向API的指针,并采用显式链的方式接将被替换动态库的文件映射进调用线程的地址空间。
其中,所述隐式链接是指连接一个应用程序时指定一组LIB文件,每个LIB文件中包含了动态库文件允许应用程序调用的函数列表,则当链接器查到应用程序调用某个动态库文件的LIB文件中给出的函数时,在生成的EXE文件映像中加入信息,指出包含有函数的动态库文件的名称;所述显式链接是指利用LoadLibrary函数使得动态库文件被映射到进程的地址空间。
优选地,该方法还包括:对新的替换动态库进行调试。
其中,所述对新的动态库进行调试,具体包括:利用记日志的方式跟踪程序内部的执行情况,并根据日志信息的“错误”提示,不断地改进新的替换动态库的功能。
一种基于动态库API拦截的数据采集系统,该系统包括:数据采集端、采集管理端及采集数据库;
数据采集端,用于确定将被替换的动态库及其位置,编写与被替换动态库同名的新的替换动态库,并在替换动态库中实现被替换动态库的API功能,将被替换动态库更改为其它名字;利用替换动态库获取目标信息系统处理或传输过程中的数据,并将数据发送给采集管理端;
采集管理端,用于接收数据后,对其进行解析和处理后,写入采集数据库。
其中,所述采集管理端包括:数据采集子单元、数据解析子单元及数据写入子单元;
数据采集子单元,用于采集替换动态库发来的数据;
数据解析子单元,用于对接收的数据进行解析;
数据写入子单元,用于将解析后的数据写入采集数据库。
(三)有益效果
本发明至少具有如下有益效果:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军装甲兵工程学院,未经中国人民解放军装甲兵工程学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410083145.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种环保家装装修工艺
- 下一篇:多用途脚踏式动力板