system()函数的用法
想用LR调用一个带参的系统外部命令假设被调用的命令在cmd下的执行语句为 C:\Test.exe --username=abc --password=123 直接执行这条指令是能在数据库里留下登录记录的
现在我想用LR来调用它,脚本如下(我就用的一般的web/http协议的脚本,然后直接在action里写了如下一段):
Action()
{
char command;
sprintf(command,"C:\Test.exe --username=abc --password=123" );
system(command);
return 0;
}
然后回放一遍脚本,我想的是能够成功执行指令在数据库留下记录,然后我再参数化并发
结果回放后弹出一个cmd命令框然后瞬间消失(正常的执行是需要一定时间的),也没在数据库里留下记录
我想知道我是哪儿弄的不对?这个被调用的应用程序是用visual studio写的然后build出来的,所以不能用web/http协议么?
请知道的指点一下啊~~大谢! 协议选的不对,web/http是对80端口的录制,而你的是C/S模式
应该选择客户端/服务器:MS SQL Server、ODBC、Oracle、DB2……,试试你数据库对应的协议
或者试试更底层的windows socket录制 本地的操作,跟协议没有关系
尝试将斜杠转义
sprintf(command,"C:\\Test.exe --username=abc --password=123" ); system(command);这个命令是专用于c脚本里才有的吧,在别的协议里能运行么。
反正我在别的协议里一运行这个命令就报错,只有在c协议下才通过。 在http协议里面是肯定可以运行的 Try C language
system("C:\\Test.exe --username=abc --password=123")
页:
[1]