Translates the source Unicode string to the specified multibyte code page.
Syntax
HRESULT ConvertStringFromUnicodeEx( DWORD *pdwMode, DWORD dwEncoding, WCHAR *pSrcStr, UINT *pcSrcSize, CHAR *pDstStr, UINT *pcDstSize DWORD dwFlag, LPWSCR lpFallBack, );
Parameters
- pdwMode
- [in, out] Storage for conversion context. A calling function should only provide storage that is initialized with zero at the first call to the method. The caller should not modify this value.
- dwEncoding
- [in] 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] Address of the Unicode string that is to be converted.
- pcSrcSize
- [in, out] Address of 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] Address of the string buffer where the conversion result will be stored.
- pcDstSize
- [in, out] Address of 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 MLCONVCHAR_USEDEFCHAR constant, which indicates that when the API encounters an unconvertible character in pSrcStr, the sequence of characters in lpFallBack is to be used in its place.
- lpFallBack
- [in] Null-terminated sequence of Unicode characters that are output in place of an unconvertible Unicode character when the dwFlag parameter is set to MLCONVCHAR_USEDEFCHAR.
Return Value
Returns one of the following values:
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.
See Also
IMultiLanguage2::ConvertStringInIStream, IMultiLanguage2::ConvertStringToUnicodeEx