ConvertINetMultiByteToUnicode function

[ConvertINetMultiByteToUnicode is available for use in the operating systems specified in the Requirements section. It may be altered or unavailable in subsequent versions. Instead, use MultiByteToWideChar or WideCharToMultiByte. ]

Translates a source string to a Unicode string and returns the result to a buffer.


HRESULT ConvertINetMultiByteToUnicode(
   LPDWORD lpdwMode,
   DWORD   dwSrcEncoding,
   LPCSTR  lpSrcStr,
   LPINT   lpnMultiCharCount,
   LPWSTR  lpDstStr,
   LPINT   lpnWideCharCount


  • lpdwMode
    A pointer to a DWORD that is used internally to store conversion context. A caller can provide storage that is initialized with zero at the first call to the function. A caller must not modify the value without calling MLANG service functions.

  • dwSrcEncoding
    A DWORD that contains the code page identifier value for the multibyte source string.

  • lpSrcStr
    A pointer to the multibyte string that is being converted.

  • lpnMultiCharCount
    A pointer to the buffer that stores the length of the source string in bytes. If this is NULL, or if the length specified is -1, the function assumes that the source string is null-terminated. When conversion is successful, the function returns to this buffer the number of bytes processed.

  • lpDstStr
    A pointer to the string buffer where the conversion result is stored.

  • lpnWideCharCount
    A pointer to the buffer that stores the length of the destination buffer as a character count. When the conversion is successful, the function returns the number of characters copied to the lpDstStr buffer.

Return value

The function returns one of the following values.

Return code Description

Performed the conversion successfully.


The specified conversion is not supported on the system.


An error has occurred.


An application calls this function to convert a character stream in an Internet character set to a Windows code page, or vice versa. This conversion can also be performed by calling IMultiLanguage::ConvertStringToUnicode. Note that the size of the multibyte string to be converted is specified in bytes, while the size of the Unicode string returned is specified in characters.


Minimum supported client

Windows XP

Minimum supported server

Windows 2000 Server