Translates the multibyte string from the specified code page to Unicode.
Syntax
HRESULT ConvertStringToUnicodeEx( DWORD *pdwMode, DWORD dwEncoding, CHAR *pSrcStr, UINT *pcSrcSize, WCHAR *pDstStr, UINT *pcDstSize, DWORD dwFlag, WCHAR *lpFallBack, );
Parameters
- pdwMode
- [in, out] Storage for conversion context. A calling function should only provide storage that is initialized with zero at the first call to the method. The caller should not modify this value.
- dwEncoding
- [in] Code page identifier value for the source multibyte string. This value is equivalent to the uiCodePage member of the MIMECPINFO structure assigned to dwEncoding.
- pSrcStr
- [in] Address of the multibyte string that is to be converted.
- pcSrcSize
- [in, out] Address of the buffer that stores the length of the source string, in byte counts. If this is NULL, or if the length specified is -1, the API assumes pSrcStr is null-terminated. When conversion is successful, the function returns the number of bytes processed to this buffer.
- pDstStr
- [in] Address of the string buffer where the conversion result is stored.
- pcDstSize
- [in, out] Address of the buffer that stores the memory allocated for pDstStr, in character counts. When conversion is successful, the function returns the number of characters copied to pDstStr to this buffer.
- dwFlag
- [in] This parameter is currently ignored. It is recommended, however, that a caller set it to zero in case this changes in the future.
- lpFallBack
- [in] This parameter is currently ignored. It is recommended, however, that a caller set it to NULL in case this changes in the future.
Return Value
Returns one of the following values:
S_OK Success. S_FALSE The conversion specified is not supported on the system. E_FAIL An error has occurred.
Remarks
Note that the size of the multibyte string to be converted is specified with a byte count, while the size of the Unicode string returned is given in characters.
See Also
IMultiLanguage2::ConvertStringFromUnicodeEx, IMultiLanguage2::ConvertStringInIStream