MLang.dll was first distributed with Microsoft Internet Explorer 4 and has since been shipped with every version of Internet Explorer up to and including Microsoft Internet Explorer 6. Table 17-1 shows the various versions of the Windows operating system (and Microsoft Office) along with corresponding releases of Internet Explorer containing MLang.
Table 17-1 Operating-system (and Office) versions with corresponding releases of Internet Explorer.
Operating-System (and Office) Version | Internet Explorer Version |
Microsoft Windows 98 | Microsoft Internet Explorer 4.01 Service Pack 1 (SP1) |
Microsoft Windows NT 4 Option Pack | Internet Explorer 4.01 SP1 |
Microsoft Windows NT 4 SP4 | Internet Explorer 4.01 SP1 |
Microsoft Office 2000 | Microsoft Internet Explorer 5 |
Microsoft Windows 98 SE (Second Edition) | Internet Explorer 5 |
Microsoft Windows 98 SE (Second Edition) for Arabic, Hebrew, and Thai | Internet Explorer 4 enabled for complex scripts |
Microsoft Windows NT 4 SP5 | Microsoft Internet Explorer 4.01 SP2 |
Microsoft Windows 2000 | Microsoft Internet Explorer 5.01 |
Microsoft Windows 2000 SP1 | Microsoft Internet Explorer 5.01 SP1 |
Microsoft Windows Millennium Edition (Me) | Microsoft Internet Explorer 5.5 |
Microsoft Office XP | Internet Explorer 5.01 SP1 |
Microsoft Windows XP | Internet Explorer 6 |
The MLang.dll distributed with Internet Explorer 4 implemented the original IMultiLanguage interface. Subsequent releases of Internet Explorer have included newer versions of MLang.dll that utilize additional interfaces. The MLang.dll distributed with Internet Explorer 5 implemented the IMultiLanguage2 interface, which updated IMultiLanguage by adding and expanding methods. These changes created new functionality for code-page detection and enhanced the existing functionality for character-set conversion. IMultiLanguage2 also supports the original capabilities of IMultiLanguage, such as character-set conversion and information retrieval from the Multipurpose Internet Mail Extensions (MIME) database. IMultiLanguage3, implemented in the version of MLang that shipped with Internet Explorer 5.5, is a small addition that extends IMultiLanguage2 by adding functionality for outbound text detection. While IMultiLanguage2 replaces some functionality of IMultiLanguage, IMultiLanguage3 just adds two new functions to IMultiLanguage2.
Third-party developers can also use MLang.dll distributed as part of the Microsoft Internet Explorer Administration Kit (IEAK), which is available at http://www.microsoft.com/windows/ieak/downloads/default.asp. As you will see in the sections that follow, software that interacts with Internet data can be made more international with MLang's numerous programming APIs.