2011-03-31 2 views
2

MFC 응용 프로그램이 시작되면 "응용 프로그램 구성"오류가 표시되기 전에 Visual C++ 런타임을 확인할 수 있습니까?MFC 응용 프로그램 시작시 Visual C++ 런타임을 확인할 수 있습니까?

CRT가로드되기 전에 순수 Win32 API를 통해 수행되어야한다고 가정합니다.

+0

+1 좋은 질문입니다. 나는 네가 할 수 있다고 생각하지 않지만 누군가 어떻게 할 지 안다면 나도 알고 싶다. – Luke

답변

3

프로그램로드가 완료되기 전에 오류가 운영 체제에서 발생합니다. 아직 실행되지 않은 초기화조차도 프로그램의 일부가 아닙니다. 따라서 프로그램이 자체적으로 오류 메시지를 제거 할 수는 없습니다.

편집 : 런타임이 없어도 프로그램을로드하려면 delay-loaded DLL으로 런타임 DLL을 설정할 수 있습니다. 그런 다음 .exe 진입 점을 위해 자신의 함수를 대체하고 런타임 라이브러리가 있는지 확인해야합니다. 이 접근법과 관련하여 많은 기술적 인 어려움이 있으며, 나는 그것이 전혀 작동하지 않을지라도 - 가능할 수도 있습니다.

-1

글쎄, 재배포 가능 패키지가 누락 되었기 때문에 오류가 발생합니다. 따라서 이와 같은 것을 시도하는 대신 VC++ 재배포 가능 파일을 Microsoft에서 설치해야합니다 (응용 프로그램의 전제 조건). 나는 다운로드 목록을 유지하는 데 사용 here.

+0

이 질문에 대한 답변이 아닙니다. – Odrade

+0

왜 안 되니? 그는 런타임이 없기 때문에 런타임을 필수 조건으로 설치하고 존재 여부를 확인해야하며 모호한 솔루션을 찾지 않아야합니다. –

+0

질문은 "시작하려고 할 때 내 앱이 중단되는 이유는 무엇이며 어떻게 해결할 수 있습니까?" 하지만 "응용 프로그램이 시작될 때 Visual C++ 런타임의 존재 여부를 감지 할 수 있습니까?" 이 질문에서 Aidan이 충돌을 일으키는 원인을 알고 있다는 것이 확실합니다. – Odrade

관련 문제