-2

当希望将指针移至下一条记录时,会显示一条错误消息,内容为:

模块“main_p.exe”中地址 004070E2 的访问冲突。写入地址 00000000

有什么办法解决这个问题吗?

var
  i: integer;
begin
  with dmData.dmEventInfo do
  begin
    tblEventinfo.Open;
    i := 0;
    while NOT tblEventinfo.Eof do
    begin
      arrNames[i] := tblEventinfo['bandname'];
      tblEventinfo.Next;
      i := i + 1;
    end;

  end;
end;
4

1 回答 1

3

您没有显示arrNames数组的声明,但我认为问题出在Length.

var
  i: integer;  arrNames : array of string;
begin
    SetLength(arrNames , tblEventinfo.RecordCount);
    i := 0;
    while NOT tblEventinfo.Eof do
    begin
      arrNames[i] := tblEventinfobandname.Value;
      tblEventinfo.Next;
      Inc(I);
    end;

  end;
于 2017-08-12T18:56:43.737 回答