Mapi32 Stub Library
Many applications support the addition of their product name to Send on the File menu through the installation of a custom version of Mapi32.dll in the system directory.
This situation creates versioning problems because many applications, such as the Microsoft® Exchange client and earlier versions of Microsoft® Outlook®, require use of the system-supplied Mapi32.dll library and fail to operate properly when the new Mapi32.dll is installed. In addition, supported Microsoft® Windows® operating systems provide administrators with the ability to lock down the system directory, thereby preventing applications from overwriting system dynamic-link libraries during an installation.
To avoid such dynamic-link library (DLL) conflict, supported Microsoft Windows operating systems, Microsoft Outlook 2000, 2002, and 2003, and Microsoft® Internet Explorer versions 5, 6, and 7 install a stub library called Mapi32.dll that acts as a central dispatcher for simple and extended Messaging Application Programming Interface (MAPI) calls.
The supported versions of Windows that install the MAPI stub library Mapi32.dll in the <drive>\Windows\System32 folder are as follows.
Simple MAPI provides a set of functions that enable you to add a basic level of messaging functionality to Microsoft Windows-based applications. Extended MAPI is the same as Microsoft Outlook 2007 MAPI, and is simply referred to as MAPI in the MAPI documentation.
Simple MAPI is no longer supported in Microsoft Outlook 2007.
The Mapi32.dll Stub Installation
During installation, the original Mapi32.dll is renamed to Eumapi32.dll if the DLL was provided by Eudora, Nsmapi32.dll if the DLL was provided by Netscape, or otherwise Mapi32x.dll. The stub library, which is contained in the file Mapi32stub.dll, is then copied to Mapi32.dll. When the Mapi32.dll is loaded and Simple MAPI or MAPI calls are made, the stub library dispatches the call to an appropriate DLL. The stub library uses settings in the registry under the HKLM\Software\Clients\Mail key to locate appropriate DLLs at runtime. These registry settings are described in Mapi32.dll Stub Registry Settings.
The stub DLL version number is set to 1.0 so that subsequent applications can install over the stub without the user being prompted that a newer version of the DLL is currently on the system. If you need to restore the stub, follow the instructions in Installing or Restoring the MAPI32.DLL Stub.