Home COM GDI+ WebBrowser Data Access

IMultiLanguage2  Interface

 

IID_IMultiLanguage2

{DCCFC164-2B38-11d2-B7EC-00C04F8F5D9A}

 

 

The IMultiLanguage2 interface is an updated version of the IMultiLanguage interface. Introduced in Microsoft Internet Explorer 5, IMultiLanguage2 provides all the functionality of IMultiLanguage plus some new and expanded methods.

 

Remarks

IMultiLanguage2 updates IMultiLanguage by adding and expanding methods. These changes create a new code page detection functionality and enhance the existing character set conversion functionality. IMultiLanguage2 also supports the original capabilities of IMultiLanguage, such as character set conversion and information retrieval from the MIME database. IMultiLanguage2 should be used in place of IMultiLanguage.

 

 

Methods in VTable order

IUnknown Methods

Description

QueryInterface

Returns pointers to supported interfaces.

AddRef

Increments reference count.

Release

Decrements reference count.

IMultiLanguage Methods

Description

GetNumberOfCodePageInfo

Returns the number of code pages for which there is information available on the system.

GetCodePageInfo

Retrieves the MIMECPINFO structure corresponding to the code page specified in uiCodePage.

GetFamilyCodePage

Retrieves the family code page identifier value corresponding to uiCodePage.

EnumCodePages

Creates a Code Page Enumeration Object, initializes it with the value specified with grfFlags, and retrieves the corresponding IEnumCodePage interface.

GetCharsetInfo

Retrieves the MIMECSETINFO structure corresponding to the specified character set name.

IsConvertible

Checks if the charset conversion from the source code page to the destination code page can be performed.

ConvertString

Converts the given source string from the source code page to the destination code page.

ConvertStringToUnicode

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

ConvertStringFromUnicode

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

ConvertStringReset

Not currently implemented.

GetRfc1776FromLcid

Retrieves the RFC1766-conforming name that corresponds to the given locale identifier (LCID).

GetLcidFromRfc1776

Retrieves the locale identifier value (LCID) corresponding to the given RFC1766-conforming name.

EnumRfc1776

Creates a Locale Enumeration Object and retrieves the corresponding IEnumRfc1766 interface.

GetRfc1776Info

Retrieves an RFC1766INFO structure that corresponds to the given locale identifier (LCID) value.

CreateConvertCharset

Creates a charset Conversion object and retrieves its corresponding IMLangConvertCharset interface.

IMultiLanguage2 Methods

Description

ConvertStringInIStream

Converts the given stream from the source code page to the destination code page.

ConvertStringToUnicodeEx

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

ConvertStringFromUnicodeEx

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

DetectCodePageInIStream

Detects the code page of the given stream.

DetectInputCodepage

Detects the code page of the given string.

ValidateCodePage

Not currently implemented.

GetCodePageDescription

Retrieves the code page description that corresponds to uiCodePage.

IsCodePageInstallable

Not currently implemented.

SetMimeDBSource

Sets the MIME database to be used by MLang.

GetNumberOfScripts

Retrieves the number of scripts.

EnumScripts

Creates a Script Enumeration Object, initializes it with the specified SCRIPTINFO constants, and retrieves the corresponding IEnumScript interface.

ValidateCodePageEx

Not currently implemented.

 

GetNumberOfCodePageInfo

 

FUNCTION IMultiLanguage2_GetNumberOfCodePageInfo ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pcCodePage AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[3] USING IMultiLanguage2_GetNumberOfCodePageInfo (pthis, pcCodePage) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetCodePageInfo

 

FUNCTION IMultiLanguage2_GetCodePageInfo ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiCodePage AS DWORD _
, BYREF pcCodePageInfo AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[4] USING IMultiLanguage2_GetCodePageInfo (pthis, uiCodePage, pCodePageInfo) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetFamilyCodePage

 

FUNCTION IMultiLanguage2_GetFamilyCodePage ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiCodePage AS DWORD _
, BYREF puiFamilyCodePage AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[5] USING IMultiLanguage2_GetFamilyCodePage (pthis, uiCodePage, puiFamilyCodePage) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

EnumCodePages

 

FUNCTION IMultiLanguage2_EnumCodePages ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL grfFlags AS DWORD _
, BYREF ppEnumCodePage AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[6] USING IMultiLanguage2_EnumCodePages (pthis, grfFlags, ppEnumCodePage) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetCharsetInfo

 

FUNCTION IMultiLanguage2_GetCharsetInfo ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL Charset AS DWORD _
, BYREF pCharsetInfo AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[7] USING IMultiLanguage2_GetCharsetInfo (pthis, Charset, pCharsetInfo) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

IsConvertible

 

FUNCTION IMultiLanguage2_IsConvertible ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL dwSrcEncoding AS DWORD _
, BYVAL dwDstEncoding AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[8] USING IMultiLanguage2_IsConvertible (pthis, dwSrcEncoding, dwDstEncoding) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertString

 

FUNCTION IMultiLanguage2_ConvertString ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pdwMode AS DWORD _
, BYVAL dwSrcEncoding AS DWORD _
, BYVAL dwDstEncoding AS DWORD _
, BYVAL pSrcStr AS BYTE PTR _
, BYREF pcSrcSize AS DWORD _
, BYVAL pDstStr AS BYTE PTR _
, BYREF pcDstSize AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[9] USING IMultiLanguage2_ConvertString (pthis, pdwMode, dwSrcEncoding, dwDstEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringToUnicode

 

FUNCTION IMultiLanguage2_ConvertStringToUnicode ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pdwMode AS DWORD _
, BYVAL dwEncoding AS DWORD _
, BYVAL pSrcStr AS DWORD _
, BYREF pcSrcSize AS DWORD _
, BYVAL pDstStr AS DWORD _
, BYREF pcDstSize AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[10] USING IMultiLanguage2_ConvertStringToUnicode (pthis, pdwMode, dwEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringFromUnicode

 

FUNCTION IMultiLanguage2_ConvertStringFromUnicode ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pdwMode AS DWORD _
, BYVAL dwEncoding AS DWORD _
, BYVAL pSrcStr AS DWORD _
, BYREF pcSrcSize AS DWORD _
, BYVAL pDstStr AS DWORD _
, BYREF pcDstSize AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[11] USING IMultiLanguage2_ConvertStringFromUnicode (pthis, pdwMode, dwEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringFromUnicode

 

FUNCTION IMultiLanguage2_ConvertStringReset ( _
  BYVAL pthis AS DWORD PTR _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[12] USING IMultiLanguage2_ConvertStringReset (pthis) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetRfc1776FromLcid

 

FUNCTION IMultiLanguage2_GetRfc1776FromLcid ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL Locale AS LONG _
, BYREF pbstrRfc1766 AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[13] USING IMultiLanguage2_GetRfc1776FromLcid (pthis, Locale, pbstrRfc1766) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetLcidFromRfc1776

 

FUNCTION IMultiLanguage2_GetLcidFromRfc1776 ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL Locale AS LONG _
, BYVAL pbstrRfc1766 AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[14] USING IMultiLanguage2_GetLcidFromRfc1776 (pthis, Locale, pbstrRfc1766) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

EnumRfc1776

 

FUNCTION IMultiLanguage2_EnumRfc1776 ( _
  BYVAL pthis AS DWORD PTR _
, BYREF ppEnumRfc1766 AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[15] USING IMultiLanguage2_EnumRfc1776 (pthis, ppEnumRfc1766) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetRfc1776Info

 

FUNCTION IMultiLanguage2_GetRfc1776Info ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL Locale AS LONG _
, BYREF ppEnumRfc1766 AS PRFC1766INFO _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[16] USING IMultiLanguage2_GetRfc1776Info (pthis, Locale, pRfc1766Info) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

CreateConvertCharset

 

FUNCTION IMultiLanguage2_CreateConvertCharset ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiSrcCodePage AS DWORD _
, BYVAL uiDstCodePage AS DWORD _
, BYVAL dwProperty AS DWORD _
, BYREF ppMLangConvertCharset AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[17] USING IMultiLanguage2_CreateConvertCharset (pthis, uiSrcCodePage, uiDstCodePage, dwProperty, ppMLangConvertCharset) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringInIStream

 

FUNCTION IMultiLanguage2_ConvertStringInIStream ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pdwMode AS DWORD _
, BYVAL dwFlag AS DWORD _
, BYVAL lpFallBack AS DWORD _
, BYVAL dwSrcEncoding AS DWORD _
, BYVAL dwDstEncoding AS DWORD _
, BYVAL pstmIn AS DWORD _
, BYVAL pstmOut AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[18] USING IMultiLanguage2_ConvertStringInIStream (pthis, pdwMode, dwFlag, lpFallBack, dwSrcEncoding, dwDstEncoding, pstmIn, pstmOut) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringToUnicodeEx

 

FUNCTION IMultiLanguage2_ConvertStringToUnicodeEx ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pdwMode AS DWORD _
, BYVAL dwEncoding AS DWORD _
, BYVAL pSrcStr AS DWORD _
, BYREF pcSrcSize AS DWORD _
, BYVAL pDstStr AS DWORD _
, BYREF pcDstSize AS DWORD _
, BYVAL dwFlag AS DWORD _
, BYVAL lpFallBack AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[19] USING IMultiLanguage2_ConvertStringToUnicodeEx (pthis, pdwMode, dwEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize, dwFlag, lpFallBack) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringFromUnicodeEx

 

FUNCTION IMultiLanguage2_ConvertStringFromUnicodeEx ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pdwMode AS DWORD _
, BYVAL dwEncoding AS DWORD _
, BYVAL pSrcStr AS DWORD _
, BYREF pcSrcSize AS DWORD _
, BYVAL pDstStr AS DWORD _
, BYREF pcDstSize AS DWORD _
, BYVAL dwFlag AS DWORD _
, BYVAL lpFallBack AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[20] USING IMultiLanguage2_ConvertStringFromUnicodeEx (pthis, pdwMode, dwEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize, dwFlag, lpFallBack) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

DetectCodepageInIStream

 

FUNCTION IMultiLanguage2_DetectCodepageInIStream ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL dwFlag AS DWORD _
, BYVAL dwPrefWinCodePage AS DWORD _
, BYVAL pstmIn AS DWORD _
, BYREF lpEncoding AS DWORD _
, BYREF pnScores AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[21] USING IMultiLanguage2_DetectCodepageInIStream (pthis, dwFlag, dwPrefWinCodePage, pstmIn, lpEncoding, pnScores) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

DetectInputCodepage

 

FUNCTION IMultiLanguage2_DetectInputCodepage ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL dwFlag AS DWORD _
, BYVAL dwPrefWinCodePage AS DWORD _
, BYVAL pSrcStr AS DWORD _
, BYREF pcSrcSize AS LONG _
, BYREF lpEncoding AS DWORD _
, BYREF pnScores AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[22] USING IMultiLanguage2_DetectInputCodepage (pthis, dwFlag, dwPrefWinCodePage, pSrcStr, pcSrcSize, lpEncoding, pnScores) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ValidateCodePage

 

FUNCTION IMultiLanguage2_ValidateCodePage ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiCodePage AS DWORD _
, BYVAL hwnd AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[23] USING IMultiLanguage2_ValidateCodePage (pthis, uiCodePage, hwnd) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetCodePageDescription

 

FUNCTION IMultiLanguage2_GetCodePageDescription ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiCodePage AS DWORD _
, BYVAL lcid AS LONG _
, BYREF lpWideCharStr AS DWORD _
, BYVAL cchWideChar AS LONG _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[24] USING IMultiLanguage2_GetCodePageDescription (pthis, uiCodePage, lcid, lpWideCharStr, cchWideChar) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

IsCodePageInstallable

 

FUNCTION IMultiLanguage2_IsCodePageInstallable ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiCodePage AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[25] USING IMultiLanguage2_IsCodePageInstallable (pthis, uiCodePage) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

SetMimeDBSource

 

FUNCTION IMultiLanguage2_SetMimeDBSource ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL dwSource AS LONG _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[26] USING IMultiLanguage2_SetMimeDBSource (pthis, dwSource) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetNumberOfScripts

 

FUNCTION IMultiLanguage2_GetNumberOfScripts ( _
  BYVAL pthis AS DWORD PTR _
, BYREF pnScripts AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[27] USING IMultiLanguage2_GetNumberOfScripts (pthis, pnScripts) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

EnumScripts

 

FUNCTION IMultiLanguage2_EnumScripts ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL dwFlags AS DWORD _
, BYVAL LangId AS WORD _
, BYREF ppEnumScript AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[28] USING IMultiLanguage2_EnumScripts (pthis, dwFlags, LangId, ppEnumScript) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ValidateCodePageEx

 

FUNCTION IMultiLanguage2_ValidateCodePageEx ( _
  BYVAL pthis AS DWORD PTR _
, BYVAL uiCodePage AS DWORD _
, BYVAL hwnd AS DWORD _
, BYVAL dwfIODControl AS DWORD _
  ) AS LONG

  LOCAL HRESULT AS LONG

  CALL DWORD @@pthis[29] USING IMultiLanguage2_ValidateCodePageEx (pthis, uiCodePage, hwnd, dwfIODControl) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

Page last updated on Monday, 03 April 2006 20:02:47 +0200