IMLangConvertCharset::DoConversionFromUnicode
A version of this page is also available for
4/8/2010
This method converts the given wide-character string from Unicode to the destination code page of the Conversion object.
Syntax
HRESULT DoConversionFromUnicode(
WCHAR* pSrcStr,
UINT* pcSrcSize,
CHAR* pDstStr,
UINT* pcDstSize
);
Parameters
- pSrcStr
[in] Pointer to the Unicode string to be converted.
- pcSrcSize
[in, out] Pointer to an unsigned integer that stores the length of the source string, in character counts. If the value of this parameter is NULL, or if the length specified is -1, the method assumes that the string specified by the pSrcStr parameter is null-terminated.
- pDstStr
[in] Pointer to the string where the conversion result is stored.
- pcDstSize
[in, out] Pointer to an unsigned integer that stores the length, in bytes, of the buffer specified with the pDstStr parameter. When the conversion is successful, the method returns the number of bytes copied to the buffer.
Return Value
The following table shows the possible return values for this method.
Value | 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 the IMLangConvertCharset::DoConversion method, this method always converts from Unicode to a multibyte code page.
To properly use this method, the source code page of the Conversion object must be initialized to Unicode. If the source code page is not Unicode, the method still does the conversion but the result is not guaranteed.
Note that the size of the Unicode string to be converted is given in characters, while the size of the returned multibyte string is given in bytes.
Requirements
Header | mlang.h, mlang.idl |
Library | mlang.dll |
Windows Embedded CE | Windows CE .NET 4.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |