Translates the source string from the specified code page to Unicode.
Syntax
HRESULT ConvertStringToUnicode( DWORD *pdwMode, DWORD dwEncoding, CHAR *pSrcStr, UINT *pcSrcSize, WCHAR *pDstStr, UINT *pcDstSize );
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 the value.
- dwEncoding
- [in] Code page identifier value for the source multibyte string. This value is equivalent to the uiCodePage member of the MIMECPINFO structure assigned to dwEncoding.
- pSrcStr
- [in] Address of the multibyte string that is to be converted.
- pcSrcSize
- [in, out] Address of the buffer that stores the length of the source string, in byte counts. If this is NULL, or if the length specified is -1, the API assumes pSrcStr is null-terminated. When conversion is successful, the method returns the number of bytes processed to this buffer.
- pDstStr
- [in] Address of the string buffer where the conversion result is stored.
- pcDstSize
- [in, out] Address of the buffer that stores the memory allocated for pDstStr, in character counts. When conversion is successful, the method returns the number of characters copied to pDstStr to this buffer.
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 occurred.
Remarks
Note that the size of the multibyte string to be converted is specified with a byte count, while the size of the Unicode string returned is given in characters.