2010-01-07 2 views
1

VS2005 및 VC6에서 wchar_t가 전달되는 것이 매우 위험한 것으로 들었습니다. VS2008 exe에서 VC6 DLL에서 할당 된 메모리를 삭제하려고 시도했지만 어설 션이 발생했습니다. Bad pointer or link issue when creating wstring from vc6 dll을 참조한 후, 메모리를 삭제하는 데 사용되는 VC6 DLL에 하나의 func를 추가했습니다. 그리고 그것은 내 문제를 해결했습니다.VS2008 exe-VC6 dll 상호 운용성

그러나 VS2008와 VC6 사이 whcar_t의 내부 sturcture 사이에 어떤 차이가 .. ..

Rgrds, Jinto

답변

1

VC6과 함께 시작하는 wchar_t 유형을하지 않았다 도와주세요. 그러나 두 가지 모두 16 비트 유형이므로 중요한 문제가 발생하지 않아야합니다. malloc()free()과 관련된 문제와 관계가 없으므로 형식이 지정되지 않은 원시 메모리에서 작동합니다.

+0

나는 그렇게 생각하지 않는다. Iam은 VC6 응용 프로그램에서 wchar_t를 사용할 수 있다고 생각한다. [MFC AppWizar exe - console]. 하지만 다른 CRT와 함께 사용하면 큰 문제는 없습니다. – Jinto