독도 광고 모금 캠페인


'LPWSTR'에 해당되는 글 2건

  1. 2008/08/20 char* to wchar_t*(LPWSTR)
  2. 2008/07/21 CString -> LPWSTR, LPWSTR -> CString
2008/08/20 09:56

char* to wchar_t*(LPWSTR)

LPWSTR ConvertLPCSTRToLPWSTR (char* pCstring)
{
 LPWSTR pszOut = NULL;

 if (pCstring != NULL)
 {
  int nInputStrLen = strlen (pCstring);
  // Double NULL Termination
  int nOutputStrLen = MultiByteToWideChar(CP_ACP, 0, pCstring, nInputStrLen, NULL, 0) + 2;
  pszOut = new WCHAR [nOutputStrLen];

  if (pszOut)
  {
   memset (pszOut, 0x00, sizeof (WCHAR)*nOutputStrLen);
   MultiByteToWideChar (CP_ACP, 0, pCstring, nInputStrLen, pszOut, nInputStrLen);
  }

 }

 return pszOut;
}

[사용]

char * str = new char[strlen("ASHOK") + 1];

strcpy(str, "ASHOK");

WCHAR * pwStr = ConvertLPCSTRToLPWSTR(str);

크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 0
2008/07/21 18:29

CString -> LPWSTR, LPWSTR -> CString

먼저..LPWSTR을 CString으로 변환하는 것은....그냥 (CString) 이렇게 캐스팅 해주면 된다.

그리고 CString을 LPWSTR로 캐스팅 하는 것은...

CString strString = "aa";
BSTR bstrString = strString.AllocSysString();
LPWSTR pwstr = (LPWSTR)bstrString;

SysFreeString(bstrString); //메모리 해제.

이렇게 해주면 된다.

크리에이티브 커먼즈 라이선스
Creative Commons License
Trackback 0 Comment 0