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
[21943] Access Violation...
초보개발자 [] 3829 읽음    2002-10-09 14:16
Access Violation 이야 워낙 많이 올라오는 질문이겠거니 하고,

search해서 관련글도 읽고 했습니다만 해결방법이 안 보여서 글 올립니다.

프로그램을 빌드하면 No Error 인데,

Debugging을 위해 브레이크 잡아놓고 Run 명령을 주면 Access Violation이 걸립니다.

CPU Window를 보니 프로그램이 시작하는 최초부분에서 멈춰있더라구요.

Call Stack 을 해서 보면.

c:\Windows\System\Kernel32.dll 이 두 번 호출되고

"Mtx"라는 게 호출된 상태에서 멈춰있습니다.

(때로는 Qtrctrl 이라는 이름으로 있을때도 있습니다.)

첨엔 잘 몰라서 Source의 어느부분인지 알아볼려고 CPU Window 에서

Scroll Bar 내려가면서 확인했더니...

Program의 제일 시작부분인 것 같더라구요.

멈춰있는 윗부분의 어셈블리는 전부

"add [eax], al"

이었거든요.

프로그램이 멈춘 아래쪽으로 천천히 내려보면 처음에

Sysinit::_linkproc__ GetTls:

라고 나오면서, 어셈블리가 마구 써 있고, 더 내리면

Windows::Finalization:
Windows::initialization:

이 나오더군요. 그 밑으로는 계속해서 위의 것과 비슷하게 반복되는데

앞의 Windows에 해당하는 부분만

Messages, Commctrl, Shellapi, Regstr, Wininet, Urlmon, Shlobj, Commdlg, Dlgs, Imm,

Richedit, Winspool 로 바뀌면서 반복되고 있었습니다.

그리고 조금 더 내려가니 결국에는...

프로그램.cpp 39 :: WINAPI WinMain(...)

하면서 프로그램의 Source 가 보이더군요.

이러면 도대체 어디서 Access Violation이 난 걸로 봐야 돼나요?

소스에 들어가기도 전이니...

어디를 봐야 할지 감이 안 잡힙니다.

벌써 이틀째인데, 가만히 보고 있는 수밖에 없으니 답답하네요.

참...이상한 점이 하나 있는데.

코드를 수정하고 나서 처음 Run할 때만 위의 Access Violation 이 발생합니다.

Ctrl+F2 로 중지하고 다시 Run하면 Access Violation없이 실행됩니다.

그 이후에 코드를 수정하지 않으면 몇 번이고 그냥 되다가,

다시 코드 수정후 Run하면 Error가 나는거죠.

여러번 반복되면 파란 화면이나 재부팅되거나 뻗어버립니다.

Error 창에는 VCLIDE50.BPL 에서 Error 가 났다고 나오네요.

Code Guard나 Numega의 BoundsChecker에도 안 걸립니다.

도대체 어찌 된건지...

후유~

+ -

관련 글 리스트
21943 Access Violation... 초보개발자 3829 2002/10/09
30882     Re:Access Violation... 금강초롱 10665 2002/10/14
21973     저도 같은 현상인데.... 남상훈 1443 2002/10/10
21979         휴~ 빌더 다시까니깐 사라지는군여.. 남상훈 4073 2002/10/10
21965     Re:Access Violation... 나도초보인데요 1675 2002/10/09
21944     Re:CodeGuard... 아제나 6797 2002/10/09
21947         CodeGuard 나 BoundsChecker 에도 안 걸립니다. (내용 없음) 초보개발자 3311 2002/10/09
21950             Re:Build All Projects 해보세요... 아제나 2865 2002/10/09
21955                 Build All Projects 에서는 Error가 안 나는데요. 초보개발자 4429 2002/10/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.