2010-07-30 1 views
1

네이티브 C++ 응용 프로그램 용 C++/cli 래퍼를 작성하고 코드 작성을 마쳤으므로 잘 작성됩니다.C++ msvcp90d.dll 액세스 위반 예외

네이티브 C++는 정적 라이브러리 (.lib) 파일로 작성되었으며 C++/cli 래퍼에서 참조한 다음 래퍼를 테스트 할 C# 콘솔 응용 프로그램을 작성했습니다. 그러나 디버거를 시작할 수 있습니다. 래퍼의 코드를 참조하는 줄을 주석으로 작성하면 잘 작동합니다.

그래서 디버거를 시작할 수 없을 때 Visual Studio의 출력 창에 처리되지 않은 예외가 나타났습니다. 처리되지 않은 예외가 msvcp90d.dll에서 발생했습니다. 액세스 위반 쓰기 오류 위치 : 0ff ......

누군가이 일반적인 문제를 일으킬 수있는 몇 가지 일반적인 시나리오를 나열 할 수 있습니까? 어떤 대답으로도 매우 만족합니다.

답변

0

정적 라이브러리에서 C++ 코드를 주석 처리하고 간단히 리턴합니다. 통합이 제대로 작동하는지 확인하십시오.

C++ 코드 생성 옵션을 확인할 수 있습니까? 멀티 스레드 런타임 라이브러리로 변경해보십시오.

+0

답변 주셔서 감사합니다. 정적 라이브러리의 코드에 액세스 할 수 없습니다. 이미 다중 스레드 런타임 라이브러리로 변경했지만 작동하지 않습니다. – jinge

0

런타임 라이브러리를 확인할 수 있습니까? /MD가 작동해야합니다. /MD 및/MDd 플래그를 사용하여 코드를 다시 컴파일하거나 사용자를/MT 및/MTd로 변경해야합니다.