Q&A

  • Delphi2006에서 BDE의 원인모를 오류 입니다.
안녕하세요. 이호림이라고 합니다.
요즘 한창 Delphi2006의 매력에 빠져 있습니다.

다름이 아니라 ADO, DBExpress 로는 모두 잘 되는데 BDE로 데이타베이스에 연결한 후
연결을 닫고 폼을 종료할때 메모리 에러가 발생하더군요...
그래서 추적 들어갔습니다.

procedure TSession.StartSession(Value: Boolean);

찾아보니까 DBTables.pas 파일에 위 함수 안에서
--------------------------------------------------------------------------------------------------
    if IsLibrary then
    begin
      DbiRegisterCallback(nil, cbDETACHNOTIFY, 0, 0, @DLLDetachCallBack, nil);
      DbiDLLExit;
    end;

    DbiExit;   <-- 이 부분
--------------------------------------------------------------------------------------------------

DbiExit; 함수를 호출할때 메모리 에러가 발생합니다.
Delphi5, Delphi6, Delphi7, Delphi2005 버전에서는 모두 잘 되는데 유독 Delphi2006 버전에서만
오류가 발생하네요...

도대체 왜 메모리 에러가 발생하는건지....

0  COMMENTS