Share via


IMLangConvertCharset::DoConversionFromUnicode

This method converts the given wide-character string from Unicode to the destination code page of the Conversion object.

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 Values

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

OS Versions: Windows CE .NET 4.0 and later.
Header: Mlang.h, Mlang.idl.
Link Library: Mlang.dll.

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.