2011-12-08 3 views
0

ATL dll을 사용하고 있습니다. AfxGetApp() 포인터가 파손되고 있습니다.

CWinApp에서 파생 된 개체가 있습니다. 그것의 initInstance()에서 AfxGetApp()을 호출하면 잘 작동하고 CWinApp의 포인터를 얻을 수 있습니다. 그러나 다른 함수에서 AfxGetApp()/AfxGetAppName() 등을 호출하면 더 많은 함수 호출이 수행 된 후 NULL이 반환됩니다.

CWinApp 개체가 파괴 된 것 같아요. 그런 생각으로 ExitInstance에 중단 점을 넣었지만 코드가 거기에 도달하지 못했습니다.

이 문제가 발생하는 이유와 이전 유효한 값을 반환 할 수있는 방법에 대해 누구든지 나를 도울 수 있습니까?

감사합니다.

+0

문제를 재현 할 수있는 최소 코드 샘플은 어떤 경우입니까? –

+0

'나는 ATL을 사용하고있다.' 대신 MFC를 사용하십시오. –

답변

0

DLL/EXE 프로젝트가 동일한 MFC 라이브러리에 연결되어 있는지 확인하십시오. 나는. 멀티 바이트/유니 코드 문자 세트 ...

관련 문제