程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> LoadRunner WinSocket協議的擴展關聯函數

LoadRunner WinSocket協議的擴展關聯函數

編輯:關於SqlServer
 

lrs_save_param_ex是lrs_save_param的擴展函數,包含了lrs_save_param的基本功能。其函數語法結構如下:

int lrs_save_param_ex ( char *s_desc, char *type, char *buff, int offset, int length, char *encoding, char *param );

s_desc表示指定的Socket名稱;

type表示要存儲的數據類型,有“user”、“static”、“received”三種,分別代表用戶數據(腳本中自己定義的字符串)、靜態數據(data.ws中錄制的數據)、最後接收的緩沖區數據;

buff表示要保存哪個緩沖區的數據。這個參數與type有對應關系,如果type是“user”、“static”兩種,則需要指定具體的buffer名稱;如果是“received”則可以忽略這個參數;

offset表示在buffer中的偏移量;

length表示要從buffer中保存的字節數;

encoding表示的是解碼方式。對於“user”類型的buffer,需要指定其為ascii或者ebcdic中的一種,NULL值表示默認的格式為ascii。對於“static”與“received”兩種類型的buffer,則可以忽略這個參數,使用客戶端的原始編碼格式來進行解碼;

param表示要保存的參數名稱。

例3-11演示了這三種用法:UserBuffer是腳本中自定義的字符串,存儲的內容是"AAAAAThis is a userbuffer test!",執行代碼:

lrs_save_param_ex("socket0","user",UserBuffer,5,26,NULL,"Param_User");

後將會把第5個字符後的26個字符即“This is a userbuffer test!”保存到Param_User中;

如果buf1在data.ws中的內容如下:

recv buf1 38

"Get your command:Hello client!,長度13."

執行代碼:

lrs_save_param_ex("socket0","static","buf1",0,30,NULL,"Param_Static");

後,將會把buf1中從0開始的30個字符即“Get your command:Hello client!”保存到參數 Param_Static中。

如果lrs_receive最後接收到的數據包內容為“Length=11Successful.AAAAA”,則執行代碼:

lrs_save_param_ex("socket0","received",NULL,9,11,NULL,"Param_Received");

後,將會把從"socket0"收到的緩沖區數據中第9個字節後的11個字節即“Successful.”保存到參數Param_Received中。

 

 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved