TCPIP

Command 창에서는 Multibyte 문자로 입력받으므로,

MultiByte 입력 -> 내부에서 유니코드로 처리 -> 보낼 때 BSTR -> BSTR로 받아서 -> 유니코드로 변환 작업.

int cstringlen, out_size = 0;
BSTR wstr;
cstringlen = strlen(buf);
out_size = MultiByteToWideChar(CP_UTF8 , 0, buf, cstringlen, NULL, 0);
wstr = SysAllocStringLen(NULL, out_size);
MultiByteToWideChar(CP_UTF8, 0, buf, cstringlen, wstr, out_size);

 

보내고 받는 쪽 모두 코드를 UTF8로 해놓을 것. CP_ACP로 해놓으면 각각의 시스템별 코드페이지를 참조해서 엉망이된다.

 

콘솔 시 : 보내는 쪽 CP_ACP로 변환한 뒤 wchar 대응시키고, 이걸 보낼 땐 CP_UTF8로 바꿔서 전송.