Partager via


IMLangConvertCharset::DoConversionFromUnicode

A version of this page is also available for

Windows Embedded CE 6.0 R3

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