일단 결론부터 말씀드리자면...
그러한 에러는 에러메시지만 봐서는 원인을 알 수가 없습니다.
프로그램에서 오류가 발생했습니다... 라는 식의 에러는 델파이 자체의 에러 핸들링 루틴이
처리하지 못한 에러가 Win32 커널로 전가된 경우입니다.
보통은 프로그램에서 오류가 생기면 델파이의 익셉션 핸들링 루틴이 그것을 트래핑해서
메시지를 보여주고 안전하게 처리하는데요.
어떤 이유로든, 델파이의 익셉션 핸들링 루틴이 그것을 처리하지 못했을 때 그 에러는 커널로
넘어가게 됩니다. 그리고 커널에서는 어떤 이유로 그 에러가 발생했는지 전혀 알수가 없으므로
종료시키려고 시도하게 되고, 그 전에 그런 메시지를 보여줍니다.
아래 박정모님은 메모리 핸들링의 문제일 가능성을 말씀하셨는데, 그 외의 가능성도 상당히
있습니다. 드물게는 델파이의 버그일 가능성도 있고, 더 드물게는 윈도우즈 자체의 버그로
문제가 생기는 경우도 있습니다.
윈도우즈의 버그를 의심해서 OS를 바꾸어서 테스트해볼 수 있는데, 경우에 따라 같은 에러가
발생하지 않을 수도 있고, 에러가 다른 형태로 나타날 수도 있고, 여전히 같은 에러가 날 수도
있습니다.
그럼...
p.s.
박정모님의 말씀이 좀 과하신 것 같은데...
전체 운영자로서 대신 사과드립니다.
김회현 님이 쓰신 글 :
:
: 1:1 음성채팅 프로그램을 만들고 있는데요.
:
: 한 2시간 정도 돌리면
:
: "프로그램에서 오류가 발생했습니다.... 닫기 무시"
: 이런 메세지박스가 뜹니다.
:
: 닫기를 누르면 또
: "04!:00002bfb의 모듈 ES197X.DRV 에서 chatPhone 잘못된 페이지 오류 발생"
: 이란 메세지 박스가 또 뜹니다.
: chatPhone 가 프로그램명 입니다.
:
: 대체 무슨 문제 때문인지 모르겠습니다.
:
: 짐작 가는 부분이라도 있으신 분은 답글 주세요.
:
:
:
:
:
|