Action()
{
char *buf0;
int ActucalNumber;
int respcode;
int length;
int Numberofbuf0;
int rc;
rc=lrs_create_socket("socket3", "TCP", "RemoteHost=162.16.1.46:9001",LrsLastArg);
if (rc==0)
lr_output_message("Socket3 was successfully created ");
else
lr_output_message("An error occurred while creating the socket, Error Code: %d", rc);
lrs_send("socket3", "buf0", LrsLastArg);
lrs_receive("socket3", "buf1", LrsLastArg);
lrs_get_buffer_by_name("buf0",&buf0,&Numberofbuf0);
//获取send buf的包的长度,在修改发送包buf0的时候自动统计包长
ActucalNumber=lrs_get_last_received_buffer_size("socket3");
//socket接收到buf动态包长,由于返回的数据包的包长动态变化,所以lrs_save_param_ex操作时需要获取ActualNumber
lrs_save_param_ex("socket3","received",NULL,0,ActucalNumber,"ascii","param1");
//获取返回数据的字符串
lrs_save_param_ex("socket3","received",NULL,32,4,"ascii","param2");
//respcode在接口返回字符串中的位置为32~36
length=strlen(lr_eval_string("<param2>"));
//获取rspcode字符串的长度,lrs_hex_string_to_int函数用
lrs_hex_string_to_int(lr_eval_string("<param2>"),length,&respcode);
//字符型转换成整形,方便在日志中查看respcode结果
lrs_close_socket("socket3");
lr_output_message("-----------------------------------INFO---------------------------------------");
lr_output_message("The length of resp is %d", ActucalNumber);
lr_output_message("The content of resp is %s", lr_eval_string("<param1>"));
lr_output_message("The content of respcode is %s", lr_eval_string("<param2>"));
lr_output_message("Respcode is %i", respcode);
lr_output_message("包长度:%d",Numberofbuf0);
return 0;
}
{
char *buf0;
int ActucalNumber;
int respcode;
int length;
int Numberofbuf0;
int rc;
rc=lrs_create_socket("socket3", "TCP", "RemoteHost=162.16.1.46:9001",LrsLastArg);
if (rc==0)
lr_output_message("Socket3 was successfully created ");
else
lr_output_message("An error occurred while creating the socket, Error Code: %d", rc);
lrs_send("socket3", "buf0", LrsLastArg);
lrs_receive("socket3", "buf1", LrsLastArg);
lrs_get_buffer_by_name("buf0",&buf0,&Numberofbuf0);
//获取send buf的包的长度,在修改发送包buf0的时候自动统计包长
ActucalNumber=lrs_get_last_received_buffer_size("socket3");
//socket接收到buf动态包长,由于返回的数据包的包长动态变化,所以lrs_save_param_ex操作时需要获取ActualNumber
lrs_save_param_ex("socket3","received",NULL,0,ActucalNumber,"ascii","param1");
//获取返回数据的字符串
lrs_save_param_ex("socket3","received",NULL,32,4,"ascii","param2");
//respcode在接口返回字符串中的位置为32~36
length=strlen(lr_eval_string("<param2>"));
//获取rspcode字符串的长度,lrs_hex_string_to_int函数用
lrs_hex_string_to_int(lr_eval_string("<param2>"),length,&respcode);
//字符型转换成整形,方便在日志中查看respcode结果
lrs_close_socket("socket3");
lr_output_message("-----------------------------------INFO---------------------------------------");
lr_output_message("The length of resp is %d", ActucalNumber);
lr_output_message("The content of resp is %s", lr_eval_string("<param1>"));
lr_output_message("The content of respcode is %s", lr_eval_string("<param2>"));
lr_output_message("Respcode is %i", respcode);
lr_output_message("包长度:%d",Numberofbuf0);
return 0;
}