51Testing软件测试论坛

标题: socket报文为二进制文件的发送 [打印本页]

作者: tianlang001    时间: 2015-5-20 15:44
标题: socket报文为二进制文件的发送
本帖最后由 tianlang001 于 2015-5-21 12:13 编辑

LR发送socket,报文是一个二进制的文件,UE打开用十六进制显示为
[attach]95458[/attach]
转换为十进制显示为
[attach]95459[/attach]
复制出去就和原数据的长度会不一样,所以无法写入data.ws里

用socket调试工具,直接发送此socket的dat文件是可以成功返回的,所以想在LR中直接发送此文件,大家有没有遇到过此类问题,需要怎么去发送dat文件呢


作者: 土土的豆豆    时间: 2015-5-21 10:15
用editor之类编辑器去查看 对比 是否修改过 或删除了某些字符,如:空格 引号 分号 逗号等
尽量别动正确格式的文件,哪怕重新保存过一次,也可能会破坏原有报文格式
作者: tianlang001    时间: 2015-5-21 11:59
本帖最后由 tianlang001 于 2015-5-21 12:14 编辑
土土的豆豆 发表于 2015-5-21 10:15
用editor之类编辑器去查看 对比 是否修改过 或删除了某些字符,如:空格 引号 分号 逗号等
尽量别动正确格 ...

报文拿不出来,就是一个二进制的.dat文件,打开就是乱码,上面重新编辑了下,以16进制打开的,不能复制,要是以10进制打开,能复制了,可是一旦复制出来就变小了

用下面的代码
    char sendData[287];
    long file;
    file = fopen("E:\\交易\\sendData.dat","rb");
    fread(sendData,287,1,file);
    fclose(file);
    lrs_save_param_ex("socket0", "user", sendData, 0, strlen(sendData),"ebcdic", "data_param");
运行就显示这个了
Action.c(21): Notify: Saving Parameter "data_param = \x01\x01".
郁闷
高手帮我分析下






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2