Home COM GDI+ WebBrowser Data Access

IMultiLanguage  Interface

 

CLDID_CMultiLanguage

{275C23E2-3747-11D0-9FEA-00AA003F8646}

IID_IMultiLanguage

{275C23E1-3747-11D0-9FEA-00AA003F8646}

 

 

This interface contains methods that perform two primary functions: gathering information about character sets, code pages, or locales from the MIME database and converting strings from one character set to another.

 

Remarks

IMultiLanguage provides access to three interfaces: IEnumCodePage, IEnumRfc1766, and IMLangConvertCharset. Calling these enumeration and conversion interfaces can provide information more efficiently than calling the IMultiLanguage methods repeatedly.

 

 

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.

 

GetNumberOfCodePageInfo

 

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

  LOCAL HRESULT AS LONG

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

  FUNCTION = HRESULT

END FUNCTION

 

 

GetCodePageInfo

 

FUNCTION IMultiLanguage_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 IMultiLanguage_GetCodePageInfo (pthis, uiCodePage, pCodePageInfo) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetFamilyCodePage

 

FUNCTION IMultiLanguage_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 IMultiLanguage_GetFamilyCodePage (pthis, uiCodePage, puiFamilyCodePage) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

EnumCodePages

 

FUNCTION IMultiLanguage_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 IMultiLanguage_EnumCodePages (pthis, grfFlags, ppEnumCodePage) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetCharsetInfo

 

FUNCTION IMultiLanguage_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 IMultiLanguage_GetCharsetInfo (pthis, Charset, pCharsetInfo) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

IsConvertible

 

FUNCTION IMultiLanguage_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 IMultiLanguage_IsConvertible (pthis, dwSrcEncoding, dwDstEncoding) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertString

 

FUNCTION IMultiLanguage_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 IMultiLanguage_ConvertString (pthis, pdwMode, dwSrcEncoding, dwDstEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringToUnicode

 

FUNCTION IMultiLanguage_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 IMultiLanguage_ConvertStringToUnicode (pthis, pdwMode, dwEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringFromUnicode

 

FUNCTION IMultiLanguage_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 IMultiLanguage_ConvertStringFromUnicode (pthis, pdwMode, dwEncoding, pSrcStr, pcSrcSize, pDstStr, pcDstSize) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

ConvertStringFromUnicode

 

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

  LOCAL HRESULT AS LONG

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

  FUNCTION = HRESULT

END FUNCTION

 

 

GetRfc1776FromLcid

 

FUNCTION IMultiLanguage_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 IMultiLanguage_GetRfc1776FromLcid (pthis, Locale, pbstrRfc1766) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

GetLcidFromRfc1776

 

FUNCTION IMultiLanguage_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 IMultiLanguage_GetLcidFromRfc1776 (pthis, Locale, pbstrRfc1766) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

EnumRfc1776

 

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

  LOCAL HRESULT AS LONG

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

  FUNCTION = HRESULT

END FUNCTION

 

 

GetRfc1776Info

 

FUNCTION IMultiLanguage_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 IMultiLanguage_GetRfc1776Info (pthis, Locale, pRfc1766Info) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

CreateConvertCharset

 

FUNCTION IMultiLanguage_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 IMultiLanguage_CreateConvertCharset (pthis, uiSrcCodePage, uiDstCodePage, dwProperty, ppMLangConvertCharset) TO HRESULT

  FUNCTION = HRESULT

END FUNCTION

 

 

Page last updated on Sunday, 26 March 2006 11:05:19 +0100