충돌
-
MSVCRTD.dll 충돌Window Programming/MFC 2008. 10. 30. 00:22
[출처] _CrtIsValidHeapPointer 에러|작성자 형기 Visual C++과 STL을 이용한 dll을 만들 경우 std::string 사용시 _CrtIsValidHeapPointer 에러가 발생하는 경우가 있습니다. 원인은 MS에서 제공하는 C Runtime Library (msvcrt.dll, msvcr70.dll, msvcr71.dll 등)의 버전을 다르게 쓰고있기 때문입니다. C Runtime Library의 버전에 따라서 CRT State와 Heap, file등의 정보를 같이쓰고 있어서 충돌이 생긴경우입니다. 이 경우는 프로젝트 전체에서 CRT dll을 사용하게 하든지, 아니면 각각의 crt상태를 가질 수 있도록 수정하여야 합니다. 간단히는 빌드옵션에서 /MD, /MDd를 사용해서 해..