IMLangConvertCharset::DoConversionToUnicode method
Converts the given string from the source multibyte code page of the Conversion object to the Unicode character set.
Syntax
HRESULT DoConversionToUnicode(
[in] __wchar_t *pSrcStr,
[in, out] UINT *pcSrcSize,
[in] WCHAR *pDstStr,
[in, out] UINT *pcDstSize
);
Parameters
pSrcStr [in]
A pointer to the string to be converted.pcSrcSize [in, out]
A pointer to an unsigned integer that stores the length of the source string, in byte counts. If this is NULL, or if the length specified is -1, pSrcStr is assumed to be null-terminated.pDstStr [in]
A pointer to the string where the conversion result is stored.pcDstSize [in, out]
A pointer to an unsigned integer that stores the length, in characters, allocated for pDstStr. When conversion is successful, the method returns the number of characters copied to pDstStr.
Return value
Returns one of the following values.
Return code | Description |
---|---|
S_OK | Success. |
S_FALSE | The conversion specified is not supported. This happens when the newly detected source code page is not supported on the system. |
E_FAIL | An error occurred. |
Remarks
Unlike IMLangConvertCharset::DoConversion, this method always performs multibyte-to-Unicode conversion.
To use this method correctly, the conversion object's destination code page must be set to Unicode. If the destination code page is not Unicode, the method converts between the source code pages and the destination code pages of the conversion object, and the size returned in pcDstSize is not correct.
Note that the size of the multibyte string is given in bytes, while the size of the Unicode string returned is the number of Unicode characters.
Requirements
Minimum supported client |
Windows XP |
Minimum supported server |
Windows 2000 Server |
Header |
Mlang.h |
IDL |
Mlang.idl |
DLL |
Mlang.dll |
See also
Reference