1.GetMem出错
  GetMem(RegionData[Iloop], RegionDataSize[Iloop]);<--此处少分配一个字节
修改为:
  GetMem(RegionData[Iloop], RegionDataSize[Iloop]+1);
2.
  //释放内存空间,删除区域对象
  for Iloop := 0 to 12 do
  begin
    ReallocMem(RegionData[Iloop], 0);<--GetMem分配的内存应该用FreeMem释放    if Region[Iloop] <> 0 then DeleteObject(Region[Iloop]);
  end;
修改为
  //释放内存空间,删除区域对象
  for Iloop := 0 to 12 do
  begin
    FreeMem(RegionData[Iloop]);
    RegionDate[Iloop]:= nil;
    if Region[Iloop] <> 0 then DeleteObject(Region[Iloop]);
  end;