Partager via


IMultiLanguage2::ConvertStringFromUnicodeEx method

Translates the source Unicode string to the specified multibyte code page.

Syntax

HRESULT ConvertStringFromUnicodeEx(
  [in, out] DWORD     *pdwMode,
  [in]      DWORD     dwEncoding,
  [in]      WCHAR     *pSrcStr,
  [in, out] UINT      *pcSrcSize,
  [in]      __wchar_t *pDstStr,
  [in, out] UINT      *pcDstSize,
  [in]      DWORD     dwFlag,
  [in]      WCHAR     *lpFallBack
);

Parameters

  • pdwMode [in, out]
    The storage for conversion context. A calling function should provide only storage that is initialized with zero at the first call to the method. The caller should not modify this value.

  • dwEncoding [in]
    The code page identifier value for the destination multibyte string. This value is equivalent to the uiCodePage member of the MIMECPINFO structure assigned to dwEncoding.

  • pSrcStr [in]
    A pointer to the Unicode string to be converted.

  • pcSrcSize [in, out]
    A pointer to the buffer that stores the length of the source string, in character counts. If this is NULL, or if -1 is specified as the length, the API assumes pSrcStr is null-terminated. When conversion is successful, the function returns the number of characters processed to this buffer.

  • pDstStr [in]
    A pointer to the string buffer where the conversion result is stored.

  • pcDstSize [in, out]
    A pointer to the buffer that stores the length of pDstStr, in byte counts. When conversion is successful, the function returns the number of bytes copied to pDstStr to this buffer.

  • dwFlag [in]
    One of the MLCONVCHAR-defined bit flag values. A caller can specify the MLCONVCHARF_USEDEFCHAR constant, which indicates that when the API encounters an unconvertible character in pSrcStr, the sequence of characters in lpFallBack is used in its place.

  • lpFallBack [in]
    The null-terminated sequence of Unicode characters that are output in place of an unconvertible Unicode character when the dwFlag parameter is set to MLCONVCHARF_USEDEFCHAR.

Return value

Returns one of the following values.

Return code Description
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 Unicode string to be converted is specified with a character count, while the size of the multibyte string returned is given in bytes.

Requirements

Minimum supported client

Windows XP

Minimum supported server

Windows 2000 Server

Header

Mlang.h

IDL

Mlang.idl

DLL

Mlang.dll

See also

IMultiLanguage2

Reference

ConvertStringInIStream

ConvertStringToUnicodeEx