请教大家一个简单的问题
我想用LoadRunner 模拟100个用户发送Socket请求 发送过去的数据都要带有ID ID存储在一个txt外部文件中 请问为什么我读取文件的时候int i;
Action()
{
charpath="E:\\Data.txt"; //读取文件的路径
int File; //文件指针 LoadRunner 不支持FILE类型
charID;
charstrSend ="*HQ,";
char Data = ",V1,160029,A,3958.0670,N,11834.0178,E,000.00,290,110808,FFFFFBFF#"; //数据的后面的部分
//lr_output_message("%s\n",Data);
i = 0;
//// srand( (unsigned)time( NULL));
i = rand()%29640; //产生29640以内的随机数
//i += 10000;
//itoa( i , ID ,10);
if((File = (int)fopen(path,"r"))==NULL)
{
lr_error_message("Can't open this file",path);
return -1;
}
fseek(File , i , 0);
fscanf(File,"%s",ID);
ID = '\0';
fscanf(File , "%s",ID);
lr_output_message("ID:%s",ID);
fclose(File);
strcat(strSend,ID);
strcat(strSend,Data);
lr_output_message("%s",strSend);
lrs_create_socket("socket0", "TCP", "LocalHost=0", "RemoteHost=127.0.0.1:6969", LrsLastArg);
lrs_set_send_buffer("socket0",strSend, 79);
lrs_send("socket0", "buf0", LrsLastArg); //往"socket0"发送"buf0"中的数据
lrs_close_socket("socket0"); //关闭
return 0;
}
老是出现无法打开文件??
而把红色部分注释起来以后运行就正常了?? 在下认为fseek(File , i , 0);这一句存在隐患,很可能是那个i超出了文件字节范围了,所以导致打开失败。建议你确认下你的文件是个什么文件,还有就是i的取值是否得当。 id=‘\0’???数组的第一个就结束了。。。后面的应该都无法读取了吧 猜猜看,是不是多进程读取一个文件的访问问题? 原帖由 云层 于 2009-6-19 21:32 发表 http://bbs.51testing.com/images/common/back.gif
猜猜看,是不是多进程读取一个文件的访问问题?
云层 是挨个答复啊,真好。
页:
[1]