잡다한 정보들(기타정보)

VS2008 unicode 에서 TRACE 사용시 한글이 안써지는 현상?

케이피 2011. 7. 13. 17:15
_CrtDbgReport: String too long or IO Error
요따구 메시지가 나오면서 한글이 안나와... -_-;;
 

멀티바이트를 사용하면 몇몇 오버헤드를 감수해야하기때문에
유니코드 사용을 권장한다지만...

아니 유니코드 쓰라면서
TRACE 엔 한글 지원하려면 또 다른 코드를 추가해야하니...
왜케 귀찮음? 이래 귀찮아서 유니코드 쓰겠음?

정말 트래이스 쓸때마다
#include <locale.h>
추가

사용시마다
#ifdef _DEBUG
     _tsetlocale(LC_ALL, _T("korean"));
     TRACE(L"어쩌구");
#endif

이질알을 해야한다구? 이런 갓뎀~

꼬우면 TRACE 내에 한글을 쓰지말고 영문만 쓰거나
::OutputDebugString() 을 써야할듯...


* DebugView
TRACE() 도 ::OutputDebugString() 도 모두 나온다.
Visual Studio 에서 디버그로 실행 시에는 Output Pane 이 메세지를
먹어버리기 때문에 DebugView 에는 표시가 안됨