您好,登錄后才能下訂單哦!
在進行LoadRunner打壓時,有時候請求的參數是加密的,而加密的法則是通過調用一段DLL來生成的。這樣通過參數化模擬的打壓請求就無法達到預期的效果,這時候就需要調用DLL后,拿到DLL的返回值,用返回值來構造打壓請求。那么怎么調用DLL呢?
首先說一下調用DLL需要的條件:
1、 VuGen只能識別標準C編譯的DLL, 所以使用VC6創建的函數必須在函數開頭加上extern "C",它告訴編譯器對這個函數按照標準C的方式進行編譯。
2、 需要有標準C的導出函數。可以通過Dependency Walker查看:
滿足這兩點后,就可以在LoadRunner腳本中調用此DLL了。
調用外部DLL的方法有兩種:
● (單個腳本中)在腳本中是使用 lr_load_dll 函數。
● (全局設置,所有腳本)通過修改 mdrv.dat 文件實現。
第一種方法,可以直接通過lr_load_dll函數來實現。
這樣就可以直接保存返回值用戶后續的打壓參數了。但是這種方法是單個腳本才能用的,其他腳本不能使用。
第二種方法是全局設置,相當于將dll加載到LoadRunner的DLL庫中。所有腳本你都可以調用。
1、將需要的DLL拷貝到LoadRunner安裝路徑的Bin目錄下。
2、修改mdrv.dat文件,找到[lrun_api]節點,在后面加上一句:
WINNT_DLLS=XXX.dll
這樣,就不用lr_load_dll函數,直接調用XXX.dll里面的函數了。
另外,在具體通過agent打壓時,會發現報如下錯誤:
Error: CCI security error:You are running under secure mode and the function ci_load_dll is not allowed in this mode.
這是由于遠程agent打壓機無法加載DLL導致的。解決辦法是在添加腳本時,將引用的DLL也添加進來。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。