winsock随机端口的捕获
在采用windows socket协议录制C/S架构的脚本时,由于服务器端口是动态随机产生的。比如
lrs_create_socket("socket1", "TCP", "LocalHost=0", "RemoteHost=192.168.1.15:31", LrsLastArg);这个31端口就是随机产生的,回放时失败。
故我们在回放时要捕获此端口,并参数化。
我用函数lrs_save_searched_string 来捕获这个端口。首先在 data.ws中的buf95中找到此端口。
":Body><GetFtpInfoResponse xmlns=\"http://tempuri.org/\"><GetFtpInfoResult>"
"1</GetFtpInfoResult><pFtpServer>59.151.28.133</pFtpServer><pPort>31</pPort"
"><pLogName>ETX5Z02</pLogName><pLogPwd>ETX5Z02</pLogPwd><pInformation>鍙互"
"姝e父鑰冭瘯!</pInformation></GetFtpInfoResponse></soap:Body></soap:Envelo"
"pe>"
确定31的左右边界值。
lrs_save_searched_string("socket6", LRS_LAST_RECEIVED, "Parameter1", "LB/BIN=<pPort>", "RB/BIN=</pPort", 1, 0, -1);
-------------------------------
知其然,知其所以然。

浙公网安备 33010602011771号