프로그램 실행시는 아무 문제가 없는데 종료시 access violation at address...
에러가 나는 것은... 먼저 access violation이 일어나는 원인은
access violation = 참조불가란 뜻이거든요..
원인은 할당되었다가 제거된 오브젝트를 참조하려 한다든가 요게 거의 99%...
예를 들어... query := nil; query.open; 이런 식이죠...
(요 위에 query는 실제 컴포넌트가 아니라 액세스를 위한 참조형입니다)
근데 프로그램 종료시 문제가 발생한다고 하셨으니까.. 만약 FormClose이벤트를
사용하신다면.. 디버그를 실행하여 그부분을 잘 살펴보시고...
아무 이상이 없을 경우 매번 종료할 때마다 계속 access violation에러가
뜨는 상황이라면.. 델파이 및 기타 시스템 프로그램등이 사용하는 shared dll
의 변경(외부요인으로 인하여..예를 들어 다른 프로그램을 인스톨한다든가..등등)
으로 인하여 델파이가 어플리케이션 종료시 해당 dll의 어떤 특정 루틴이
제대로 동작을 못하는 경우죠..예를 들어..shared dll이라하면.. comctrls.dll이라든가..
요론건 IE깔면 거기서 또 새로 업데이트 되기 때문에 주의하셔야 됩니다.
그럼 도움이 되셨는지... 이만.. -Troy
|