if savedialog1.Execute then
 begin
  fn_s:= savedialog1.FileName;
  if fileExists(fn_s) then
   edit4.Text:= '文件已存在'
  else
  //fn_s:= savedialog1.FileName;
  assignfile(F,fn_s);
  rewrite(F);
  edit4.Text:= fn_s;  i:=1;
  k:=1;
  x[0]:= 0;
  y[0]:= 0;
  Inteval :=0;
  frequency :=1;
  P1:=0;
  P2:=0;
  Dtime:=5;
  QueryPerformanceCounter(P1);
  QueryPerformanceFrequency(frequency);  while Inteval < TimerInteval do
  begin
   //pResultArr:= @buffer;
   wantReadCount:= 2;
   err:= ZT8319_AI(cardNO, pResultArr, wantReadCount);
   edit1.Text:= inttostr(err);
   result[k]:= buffer[1];          //力值
   result[k+1]:= buffer[2];        //编码器输出
   //for i:=1 to 1000  do
     //begin
    //edit2.Text:= inttostr(result[i]);
      edit1.Text:= inttostr(err);
      edit2.Text:= inttostr(result[k]);
      edit3.Text:= inttostr(result[k+1]);
      edit2.Refresh;
      edit3.Refresh;      x[i]:=x[i-1]+1;
      y[i]:=result[k];            //k:显示力值; k+1:显示编码器输出;
      MoveTo(x[i-1] mod ClientWidth,200-trunc(y[i-1]/50));
      LineTo(x[i] mod ClientWidth,200-trunc(y[i]/50));
      //k:=k+2;
      //edit3.Text:= inttostr(y[i]);
      //edit3.Refresh;      {for j:=1 to 5000000  do
         begin         end;}      Ddelay(Dtime);
      write(F,result[k]:8);
      QueryPerformanceCounter(P2);
      Inteval:=round(1000*(P2-P1)/frequency);
      edit5.Text:= inttostr(Inteval);
      edit5.Refresh;    k:=k+2;
    i:=i+1;
    //closefile(F);
  end;
  //filehandle:= filecreate(savedialog1.FileName);
  //filewrite(filehandle,result,2000);
 { for i :=1 to 2000 do
    write(F,result[i]:5);
    //write(F,  ); }
  closefile(F);
  ZT8319_CloseDevice(CardNO);  end;我是一个新手,用QueryPerformanceCounter进行计时,在执行这段代码的时候Inteval总是在计数到5000~6000的时候出现I/O Error103,然后提示“0x0040377a”指令引用的“0x00f5260c”内存。该内存不能为“read”。runtime error 216 at 00040377A,不知道是出了什么错误,来这里请大家帮忙看看。谢谢