C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[10324] DB관련하여 궁금한게 있습니다.
배현 [hyeonbae] 904 읽음    2001-08-27 19:47
고수님들의 도움이 필요합니다.
코딩엔 잼뱅이라서 사소한 것에서 막히네요
DB에서 TDatabase랑 TTable을 이용해서 Text파일에 있는 데이터를
매분마다 읽어서 DB에 저장을 하려고 합니다.
근데 코딩엔 별 문제가 없는 것 같은데 EAccessViolation에러가 나네요
Borlndmm.dll파일이 문제가 있다고 하는데 무엇이 문제인지 못찾겠어요
처음 몇분간은 문제없이 저장이 되다가 시간이 좀 지나면 이런 에러메세지가 뜨네요..
도움의 손길이 간절합니다..
꼭 답변 부탁드리겠습니다.
참고로 코드를 올립니다.

void TForm1::Write_2_DB(void)
{
  int FileHandle;
  int FileLength;
  int BytesRead;
  char *pszBuffer;
  int i, j, k, l, m, n;
  char *token;
  char seps[]=" ,\t\n";
  double *data;

// ------------------------------------------------
//            Open File and Reading File
// ------------------------------------------------

  char const *Path ="D:\\sbr\\state_set.txt";

  try
    {
    FileHandle = FileOpen(Path, fmOpenRead);
    FileLength = FileSeek(FileHandle,0,2);
    FileSeek(FileHandle,0,0);
    pszBuffer = new char[FileLength+1];
    BytesRead = FileRead(FileHandle, pszBuffer, FileLength);
    FileClose(FileHandle);
    }
  catch(...)
    {
    Application->MessageBox("Can't open the file","File Error",IDOK);
    }

// -------------------------------------------------
//               Divided Data Storing
// -------------------------------------------------

  token=strtok(pszBuffer, seps);
  data=new double[51];


  for (i=0;i<51;i++)//BytesRead
    {
    data[i]=atof(token);
    token=strtok(NULL,seps);
    if (token==NULL) break;
    }
  delete [] pszBuffer;

  Table2->First();
  Table2->Edit();
  for (i=0;i<Table2->FieldCount;i++)
    {
     if (i<2)
      {
      Table2->Fields->Fields[i]->AsInteger=data[i];
      }
      else if (i==2)
        {
        Table2->Fields->Fields[i]->AsFloat=data[i];
        }
        else if (i>3)
          {
          Table2->Fields->Fields[i]->AsInteger=data[i];
          }   
     }
  Table2->Post();
}
//---------------------------------------------------------------------------

+ -

관련 글 리스트
10324 DB관련하여 궁금한게 있습니다. 배현 904 2001/08/27
10326     Re:DB관련하여 궁금한게 있습니다. 최보현.U&I 938 2001/08/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.