我使用Winsocket协议在LR11.5版本中录制了一个脚本(只有我能用来记录我的应用程序的协议)。我想关联几个接收缓冲区。在一个这样的缓冲区中,我有两个要关联的值,因为它们都是相同的值。缓冲区如下: -
recv buf30 136 “&安培; SOT&安培; 148 \ vF.USER符\ v的 SK1 \ vTIME.OUT.MINUTES&安培; EOT&安培;&安培; START&安培; 148 \ V3 \ v999&安培; END&安培;&安培; START&安培;” “99 \ v56 \ v28 2016年2月\ v SK1 \ v8298,\ v28 2016年2月16日:23 \ vg15.0.00 \ vr11.000& END&”
高亮度值是我需要关联的值。我该怎么做呢我已经习惯了lrs_save_param()函数进行关联。
答案 0 :(得分:0)
您需要的关联API取决于脚本中记录的网络协议。如果它使用常量的字段偏移量,则可以安全地使用 lrs_save_param 。相关的结果将是这样的:
lrs_save_param("socket0", LRS_LAST_RECEIVED, "param1", 16, 3);
lrs_save_param("socket0", LRS_LAST_RECEIVED, "param2", 138, 3);
(从零开始的偏移量,值的长度。)
但是如果偏移量在不同的运行中不同,则情况会更复杂:您必须为提取的值指定边界。例如:
lrs_save_searched_string("socket0", LRS_LAST_RECEIVED, "param1", "LB/BIN=\v", "RB/BIN=\v",
2, 0, -1);
lrs_save_searched_string("socket0", LRS_LAST_RECEIVED, "param2", "LB/BIN=\v", "RB/BIN=\v",
8, 0, -1);
(左右边界,基于1的出现次数,偏离左边界,长度,在这种情况下自动检测。)
请查看the official documentation了解详情。