나는 이것에 관하여 많은 정보를 찾지 못했습니다. 따라서 VS2005를 사용하여 빌드 된 프로젝트가 있으므로 mscvr80.dll을 사용합니다. 내 프로젝트는 또한 타사 라이브러리를로드 한 다음 mscvrt60.dll을로드합니다.여러 mscvrt **. dll 버전을로드하는 데 문제가 있습니까?
이제 프로그램에서 메모리 읽기 위반으로 프로그램이 중단되는 이상한 버그가 있습니다. 디버그에서 디버그는 내 검색에서 초기화되지 않은 메모리 위치를 나타내는 0xcdcdcdcd에 있습니다. 디버거는 위반이 제 3 자 라이브러리의 알 수없는 함수 내에 있음을 나타냅니다.
본인은이 라이브러리의 소유자에게 연락했으며 설명 된대로 오류를 알 수 없습니다. 또한 VS60에서 컴파일 된 다른 프로젝트가 있는데이 라이브러리는이 타사 라이브러리를 사용하며 유사한 오류가 없습니다. 그래서 궁금, 여러 공통 런타임 버전을 사용하여 문제가있을 수 있습니까? 하나의 런타임 (.dll에서 말하면)이 메모리를 할당 할 수있는 상황을 모호하게 기억하고 있으며 다른 버전이이 메모리를 확보하려고 시도하면 문제가 발생할 수 있습니다. 그러나, 나는 이것을 읽은 곳을 기억할 수 없으며 주제에 대한 많은 정보를 찾을 수 없습니다.
모든 의견을 보내 주시면 감사하겠습니다.
v60과 비교하여 프로젝트를 컴파일하는 간단한 방법이 있습니까? 실제로 Visual C++ 6.0으로 솔루션을 다운 그레이드하려고하지 않고 있습니까? – DeusAduro
VC6을 설치했다면 링커 설정에서 "기본 라이브러리 없음"옵션을 선택할 수 있습니다. 그런 다음 수동으로 이전 librairies 가리 킵니다. –