地震仪数据读取项目

1、打印buf出现数据不正确,应该是printf("%x",*buf);十六进制是不能直接像字符串一样打印出来的,必须一个一个打印

2、std::string 的字符串链接函数不能用于含有0的字符串,会导致错误判断字符串长度,丢失数据

3、缺少重要数据结构说明和数据包交互时序文档,经测试,重要的时序交互如下:

    其中的RTS指令必须执行,不然后续指令无法执行

4、网路调试正常,程序卡死在接收数据指令

     检查验证数据包的报文,用不同IP获取不同报文,配合反编译观察数据包结构,确认程序数据包正确,经思考和观察,发现调试过程中connect函数端口写死,导致一个端口被重复使用,出错

 5、字符串拼接,不能直接用char* ,因为+重载不接受,需要对char*进行string强转。

6、链接数据库失败,提示xxxx sock ,换localhost为IP,命令行测试通过

这个项目最坑的地方在于,两个端口的命令和数据之间有耦合关系,且文档资料不全,需要部分逆向工作才能实现整体功能

猜你喜欢

转载自www.cnblogs.com/ynhi/p/10319101.html