오늘 아침에 작업을 하고 있었는데 갑자기 Visual Studio 2005 에서 위와 같은 메세지가 뜨기 시작했습니다.
데브피아에서 관련한 게시물을 보니 ncb 파일 등을 지우고 하란 말이 있었는데 댓글엔 그래도 해결이 안돼서 프로젝트를 새로 만들었다는 이야기가 있더군요.
ncb 뿐만 아니라 h, cpp, rc 파일만 남기고 새로 만들어서 덥었는데도 같은 현상이 나타나더군요.
느낌에 h, cpp, rc 중에 문제가 있다고 판단하였습니다.
그런데 rc 파일은 사실 별게 없었습니다.
따라서 h 아님 cpp 인데..
혹시나 해서 include 를 하나씩 제거 해가면서 이벤트 핸들링을 만들어 보니 특정 h 를 include 하면 위의 현상이 나타나는 것이었습니다.
지금으로썬 의심할 수 밖에 없는 것이 Visual Assist 가 참조하기 위해 헤더 파일을 헤집고 다니는데 그것에 의한 무한 순환 참조 때문이 아닌가 합니다.
사실 참조하고 있지 않다면 ( 읽기 전용파일도 아닙니다 ) 읽기전용이기 때문에 기록할 수 없다는 건 말이 맞지 않겠죠. MS가 예외처리를 제대로 안 했을리도 없고..
#pragma once 나 혹은 #ifndef #define ~~~ #endif 을 VA가 제대로 처리하지 못해서 발생하지 않나 생각합니다.
임시적 해결하시려면 해당 h 파일을 주석처리한 다음 이벤트 핸들링을 해야 할 듯 합니다.
코드 작성이 끝나고 컴파일을 할 때 주석을 풀어 주시면 제대로 해결되네요.