神仙也考试 发表于 2016-8-8 17:15:24

winsockets关联疑问

To 各位使用过winsockets的大侠们:

   公司使用的是C/S架构的软件,我使用最最不推荐用的winsockets协议了。。。

   在data.ws中有涉及到需要关联的key,但是这个关联总是有问题,求助于各位大大们!

   问题:我这2个key1和key2的关联函数设置是否错误?若要修改添加,要怎么去添加修改,请教了。



附脚本:

#include "lrs.h"
Action()
{
    lrs_create_socket("socket26", "TCP", "RemoteHost=IP:PORT1",LrsLastArg);//IP和端口不方便就屏蔽了^_^       
    lrs_send("socket26", "buf135", LrsLastArg);
    lrs_receive("socket26", "buf136", LrsLastArg);
        lrs_save_searched_string("socket26","buf136","correlation", "LB/BIN=\\${Param1}", "RB/BIN=\\x00",NULL,NULL,-1);//关键函数key1
   lrs_close_socket("socket26");
lrs_create_socket("socket28", "TCP", "RemoteHost=IP:PORT2",LrsLastArg);   //IP和端口不方便就屏蔽了^_^
    lrs_send("socket28", "buf137", LrsLastArg);
    lrs_receive("socket28", "buf138", LrsLastArg);
        lrs_save_searched_string("socket28","buf138","correlation", "LB/BIN=\\${Param2}", "RB/BIN=\\x00",NULL,NULL,-1);        //关键函数key2
    lrs_close_socket("socket28");
    return 0;
}


data.ws
;WSRData 2 1

sendbuf135 60
        "\x00\x00\x00"
        "2"
        "\x00\x00\xb3\xb3\x04\x00\x00"
        "\b*******"   //发送的账号屏蔽为****
        "\x00"
        " ******"   //发送的密码屏蔽为****
        "\x00\x00\x02"
        "pc"
        "\xb2"

recvbuf136 102
        "\x00\x00\x00"
        "\\"
        "\x00\x00\xb3\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\xd3"
        "H"
        "\x00"
      //"$efede3c0-0da3-4d27-afb9-61aafbdaa864"   //原始需要关联的key1
        "${Param1}"       //关联参数后的key1
        "\x00\x00\x00"
        "m"
        "\x00\x00\x00"
        "\n"
        "\x00\x00\x00"
        "\v"
        "\x00\x00\x00"
        "y"
        "\x00\x00\x00"
        "\n"
        "\x00\x00\x00"
        "\v"
        "\x00"
        "\r121.201.34.78"
        "\xea"
        "lL"

sendbuf137 69
        "\x00\x00\x00"
        ";"
        "\x00\x00\x9c"
        "A"
        "\x04\x00\x00\x00\x00\x00\x00\x98\xd3"
        "H"
        "\x00\x00\x00"
        "m"
        "\x00\x00\x00"
        "\n"
        "\x00\x00\x00"
        "\v"
        "\x00"
        "${Param1},"//关联参数化的key1

recvbuf138 110
        "\x00\x00\x00"
        "d"
        "\x00\x00\x9c"
        "B"
        "\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\xd3"
        "H"
        "\x00\x00\x00"
        "y"
        "\x00\x00\x00"
        "\n"
        "\x00\x00\x00"
        "\v"
        "\x00\x00\x00"
        "m"
        "\x00\x00\x00"
        "\n"
        "\x00\x00\x00"
        "\v"
        "\x00"
      // "$5f1211f4-6a82-4e4f-a179-3cd5948ce20d"    //原始的key2
        "${Param2}"   //关联后的key2
        "\x00\x00\x01"
        "h"
        "\x00\x13"
        "2016-08-08 11:47:35"
        "\xa9"


-1




梦想家 发表于 2016-8-9 10:39:50

看不懂 ,顶起

ggogw 发表于 2016-9-22 11:23:10

从你的代码那里看你 key1,key2根本就没用到,何必要关联。你在receive做参数化,哪有这样关联的,并且你也用错了,建议这么处理,receive返回的是动态变化的。
定义 char *KEY1
lrs_save_searched_string("socket26",LRS_LAST_RECEIED, "KEY1","LB=$",NULL,1,0,36);
KEY1就可以做我下一次send数据时如果有用到这个值的就可以关联了,在receive用是没意义的。



神仙也考试 发表于 2016-9-23 09:08:21

ggogw 发表于 2016-9-22 11:23
从你的代码那里看你 key1,key2根本就没用到,何必要关联。你在receive做参数化,哪有这样关联的,并且你也 ...

谢谢解答,我所理解你的意思是,
1、在data.ws中的这些recvive做关联其实是没意义的,有意义的只是在send中是吧?
2、你的回复中的关联函数是要放在lrs_reveive之前吗?

谢谢解答!
页: [1]
查看完整版本: winsockets关联疑问