
If (MAPILogonEx(0, "", "", (MAPI_NEW_SESSION | MAPI_USE_DEFAULT | MAPI_EXTENDED | MAPI_UNICODE), out ExtSession) = 0) Uint flFlags, out IMAPISession lppSession) Internal static extern int MAPILogonEx(uint ulUIParam, Internal static extern void MAPIUninitialize() Internal static extern int MAPIInitialize(IntPtr lpMapiInit) Public const uint MAPI_UNICODE = 0x80000000 Public const uint MAPI_USE_DEFAULT = 0x00000040 Public const uint MAPI_EXTENDED = 0x00000020 Public const uint MAPI_NEW_SESSION = 0x00000002 Int32 PrepareForm(ref Guid lpInterface, IntPtr lpMessage, out uint lpulMessageToken) IntPtr lpMessageSent, uint ulFlags, uint ulMessageStatus, uint ulMessageFlags, Ref Guid lpInterface, uint ulMessageToken, Int32 ShowForm(uint ulUIParam, IntPtr lpMsgStore, IntPtr lpParentFolder, Int32 AdminServices(uint ulFlags, out IntPtr lppServiceAdmin) Int32 SetDefaultStore(uint ulFlags, uint cbEntryID, IntPtr lpEntryID) Int32 Logoff(uint ulUIParam, uint ulFlags, uint ulReserved) Int32 QueryIdentity(out uint lpcbEntryID, out IntPtr lppEntryID)

Int32 EnumAdrTypes(uint ulFlags, out uint lpcAdrTypes, out IntPtr lpppszAdrTypes) Uint ulFlags, out uint lpcValues, out IntPtr lppOptions) Int32 QueryDefaultMessageOpt( string lpszAdrType, Int32 MessageOptions(uint ulUIParam, uint ulFlags, IntPtr pAdviseSink, out uint lpulConnection) Int32 Advise(uint cbEntryID, IntPtr lpEntryID, uint ulEventMask, Uint cbEntryID2, IntPtr lpEntryID2, uint ulFlags, out bool lpulResult) Int32 CompareEntryIDs(uint cbEntryID1, IntPtr lpEntryID1, Uint ulFlags, out uint lpulObjType, out IntPtr lppUnk) Int32 OpenEntry(uint cbEntryID, IntPtr lpEntryID, IntPtr lpInterface, Int32 GetStatusTable(uint ulFlags, out IntPtr lppTable) Int32 OpenProfileSection(ref Guid lpUID, ref Guid lpInterface, uint ulFlags, out IntPtr lppProfSect) Int32 OpenAddressBook(uint ulUIParam, IntPtr lpInterface, uint ulFlags, out IntPtr lppAdrBook) IntPtr lpInterface, uint ulFlags, out IntPtr lppMDB) Int32 OpenMsgStore(uint ulUIParam, uint cbEntryID, IntPtr lpEntryID, Int32 GetMsgStoresTable(uint ulFlags, out IntPtr lppTable) Int32 GetLastError(int Int, uint ulFlags, out IntPtr lppMAPIError) InterfaceType(ComInterfaceType.InterfaceIsIUnknown), The problem can be reproduced with the following C# code: using System

The call to MAPIInitialize() raises an "External component has thrown an exception" exception.


After updating to the latest version of Outlook 2016 (both Version 2004 Build 12730.20206 and Version 2003 Build 12624.20520) I can no longer use MAPI.
