將ANSI轉換到Unicode ?
? (1)通過L這個宏來實現,例如: ? CLSIDFromProgID( ? L"MAPI.Folder",&clsid); ?
? (2)通過MultiByteToWideChar函數實現轉換,例如: ?
? char ? *szProgID ? = ? "MAPI.Folder"; ?
? WCHAR ? szWideProgID[128]; ?
? CLSID ? clsid; ?
? long ? lLen ? = ? MultiByteToWideChar(CP_ACP,0,szProgID,strlen(szProgID),szWideProgID,sizeof(szWideProgID)); ?
? szWideProgID[lLen] ? = ? '\0'; ? ?
? (3)通過A2W宏來實現,例如: ? ?
? USES_CONVERSION; ? ?
? CLSIDFromProgID( ? A2W(szProgID),&clsid); ? ?
? ?
? 將Unicode轉換到ANSI ?
? (1)使用WideCharToMultiByte,例如: ?
? // ? 假設已經有了一個Unicode ? 串 ? wszSomeString... ? ?
? char ? szANSIString ? [MAX_PATH]; ? ?
? WideCharToMultiByte ? ( ? CP_ACP, ? WC_COMPOSITECHECK, ? wszSomeString, ? -1, ? szANSIString, ? sizeof(szANSIString), ? NULL, ? NULL ? ); ? ?
? (2)使用W2A宏來實現,例如: ?
? USES_CONVERSION; ?
? pTemp=W2A(wszSomeString);????
posted on 2006-12-26 09:01
石正 閱讀(13368)
評論(6) 編輯 收藏