다른 컴퓨터에서 프로젝트를 작성하고 실행하는 데 이상한 문제가 있습니다. 이것은 병존 오류입니다. 일반적으로 C++ 재배포 가능 파일이 기계 등에 설치되어 있지 않기 때문에 발생합니다. 그러나이 경우 프로젝트는 해당 시스템에서 컴파일됩니다. MSVC++ 2005가 설치되어 있으면 런타임이 있어야합니다 (어쨌든 좋은 측정을 위해 런타임을 다시 설치했습니다). 링커가 시스템에서 사용할 수없는 런타임 라이브러리를 참조하는 이유는 무엇입니까?MSVC++ 2005가 설치된 다른 컴퓨터에서 SideBySide 오류가 발생했습니다.
저는 런타임 라이브러리에 동적으로 연결됩니다.
이 문제를 디버깅하는 방법에 대한 아이디어가 있으십니까?
감사합니다.
편집
내가이 관련이 있기 때문에 다른 게시물을 시작하고 싶지 않았다. 이 DLL 버전이 엉망이기 때문에 런타임에 정적으로 링크하는 것이 좋은 이유입니까? 이러한 모든 문제를 피할 수 있습니까? 더 이상 런타임에 동적으로 링크하는 데 어떤 이점도 보이지 않습니다. 나는 DLL 런타임에서 새로운 DLL로 업데이트/버그 수정의 이점을 얻는다는 인상을 받았다. 그러나 SxS와 매니페스트 때문에 특정 버전 (이전 버전)의 DLL을로드한다는 것을 보장합니다. 그렇다면 동적 런타임의 핵심은 무엇입니까? 모든 의존 라이브러리에 재사용 기능을 내장하지 않아서 몇 킬로 비트의 공간이 절약 될 수 있습니다. 그러나 일부 고대 런타임 버전이 시스템에서 제거 되었기 때문에이 비용을 앱의 비용과 비교해 볼 가치가 있지 않습니까?
다시 한번 감사드립니다. 여전히 원래의 문제를 추적하고 아마도 내가 사용하고있는 모든 단일 라이브러리를 다시 컴파일해야 할 것입니다.
8.0.50608.0은 c : \ windows \ WinSxS 폴더에서 찾을 수없는 파일입니다. 고마워, sxstrace에 대해 몰랐다. – Budric
SP1을 설치 했습니까? – Bahbar