录制socket协议的VU脚本,回放出错,能否解决
请问:1.rational有没有tcp/ip的协议?
2.我录制的系统是用socket和tcp/ip协议的,C/S并为三层结构,但rational中没有tcp/ip协议,只能用socket了,脚本可以顺利录制,但对于脚本的意义,本人实在无能为力,不会修改。回放时,其中有三个command运行失败,这三个命令形式如下:(列出两个示意一下)
sock_recv ["4006"] "$"; /* 24 bytes */
sock_disconnect(TESTTOOL_1);
set Server_connection = TESTTOOL;
set Think_avg = 31;
sock_send
"`03da0000280000000300000000000000080000000c000000670065007400750070006400"
"610074006500760065007200`";
sock_recv ["4014"] "$"; /* 32 bytes */
sock_disconnect(TESTTOOL_2);
TESTTOOL_3 = sock_connect("4015", "TESTTOOL:211");
set Server_connection = TESTTOOL_3;
set Think_avg = 0;
sock_send
"`04da00003400000008000000160000004700720070004100700070005300650072007600"
"650072002e00470072007000530065007200760065007200`";
能通过的command示例如下:
sock_nrecv ["4004"] 16;
sock_send
"`03da0000240000000300000000000000080000000a000000730065007200760065007200"
"7300740061007400`";
我发现通不过的都是sock_recv 标志且有"$"符号,通过的则是sock_nrecv标志,请问有没有解决办法啊? 1、socket使用的就是tcpip协议
2、将sock_recv ["4014"] "$"; /* 32 bytes */
改成sock_nrecv ["4014"] 32;
其他的以此类推 谢谢,非常感谢!!!! 我知道”$"表示接收完所有数据,而32表示接收32byte,我想问一下楼主,这里应该说实际表示的意义都是一样的,为什么”$"符号会导致错误呢? This example reads until the end of the connection. It fails only if Timeout_val (subject to scaling) milliseconds expires before reaching the end of the connection:
sock_recv ["cmd003r"]"$"; 恍然大悟,多谢楼主!
页:
[1]