51Testing软件测试论坛

标题: LOADRUNNER agent process 调用DLL出错的问题 [打印本页]

作者: door11    时间: 2007-12-21 11:30
标题: LOADRUNNER agent process 调用DLL出错的问题
基本情况:
用VS2005写的DLL文件,C++,ATL.
本人机器上安装了VS2005和loadrunner8.1,在本机上用LR写脚本调用DLL,能正常工作.
但在LOADRUNNER  agent process上运行虚拟用户的时候报出以下错误:
Action.c(16): Error: C interpreter run time error: Action.c (16):  Error -- File error : LoadLibrary(*****.dll) failed : 由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。
.
End auto log messages stack.
Start auto log messages stack - Iteration 1.
Action.c(16): Notify: CCI trace: Action.c(16): ci_load_dll(0x01089b9c, 0x010b018f "*****.dll")
.
Action.c(16): Notify: CCI trace: Compiled_code(0): Action()
.
Action.c(22): Error: C interpreter run time error: Action.c (22):  Error -- Unresolved symbol : *****.
End auto log messages stack.

PS:
运行产生负载的机器只安装了LOADRUNNER  agent process;没安装VS2005,但安装了.NET FRAMEWORK2.0

在安装完整LOADRUNNER但没安装vs2005(无.NET FRAMEWORK2.0)的机器上运行脚本,DLL也拷贝到了本地目录,还是产生以上同样的错误,

几个疑问:
1. 运行load generator时脚本所调用的DLL文件需要拷贝到安装generator的机器上去吗?
2. 是DLL运行环境的问题呢还是LR设置有问题?

希望高手指点指点,多谢啦!!!!
作者: door11    时间: 2007-12-25 09:56
大哥大姐大叔大婶们,这个问题很深奥吗?给点意见也很好啊,帮帮这个脑壳都快想开花的人吧。。。。。。
作者: vany_w707    时间: 2008-3-11 17:46
标题: 偶也遇到了。来up一下
顺便问问,这个问题你解决了嘛?
作者: liangjz    时间: 2008-3-11 19:09
你在load generator 上同样需要DLL,以及DLL依赖的lib或者DLL

所以你需要用depends 工具查看依赖关系是否完整了
作者: kursk    时间: 2008-7-1 16:22
这个版本的人都好像没有结帖的习惯,即使解决了问题也不说是什么解决的。还是我来做个总结吧

实际问题就出在没有安装vs2005上,用depends工具也可以发现有dll文件不存在,但是即使把dll文件copy在对应目录(loadrunner/bin,scipts目录,system32目录下)实际上还是都不可以,我都试过了。所以即使发现了缺少dll文件,好像还是不能解决这个问题。

我最后尝试在安装LR的机器上安装了vs2005(被Load的dll文件是在vs2005下开发)出来的,结果就成功了。

结论是:dll文件在什么环境下开发出来,也必须在什么环境被LR load,这是最保险的方法。
这么古老的问题我都回答了,版主应该给我一颗奖章
作者: phil    时间: 2008-8-7 12:05
你最好察看以下在Agent机器上的Loadrunner的目录下是否有一个VSNet.Dll(大概是这个名字)的文件,这是Agent编译用的,没有的话,就从Controller的机器考过来,Agent机器一般不需要VS2005的。
作者: phil    时间: 2008-8-7 12:08
补充以下是在 /Loadrunner/bin目录下,不是在 AgentService/bin下




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2