MAPILogonEx() may appear to hang in Outlook 2016

I had a case recently where the customer was had written a service application using Extended MAPI.  The customer found that in his test environment the call to MAPILogonEx() was hanging and not returning.  After debugging it, we realized that the hang was caused by an unseen SSL security prompt.  The target Exchange server hosting…

0

MAPILogonEx causes crash if Version Info is not specified on the module

I wanted to create a simple Extended MAPI application that would call MAPIInitialize() followed by MAPILogonEx().  Seems simple right?  I do it all the time.  However, this time, for whatever reason, every time I called MAPILogonEx() my process crashed.  No matter what flags I chose, or how I called either MAPIInitialize() or MAPILogonEx(), it would…

0

How to configure an Outlook 2016 profile using MFCMAPI

The process for creating a Outlook profile in Outlook 2016 has changed. This article documents the simple steps to create one using MFCMAPI.  Note: For non-developers this is not the recommended way of creating profiles in Outlook 2016.  It is recommended that you use Outlook to create the profile as the logic for this is…

32

How to create an Outlook profile for Office 365

I had another case involving creating a profile to an Office 365 mailbox.  However, this time it was for Outlook’s MAPI, not Exchange’s MAPI as previously documented.  After discussing this with the Outlook product team they agreed to document the minimum number of properties to create a profile using MFCMAPI.  Here are the steps.  For…

5

How to configure an Outlook profile using MFCMAPI for Exchange 2013

I had another case involving creating a profile to an Exchange 2013 server.  However, this time it was for Outlook’s MAPI, not Exchange’s MAPI as previously documented.  After discussing this with the Outlook product team they agreed to document the minimum number of properties to create a profile using MFCMAPI.  Here are the steps.  For…

0

A new MAPI interface is available to let you force connections to go to a specific Exchange Server

NOTE: This interface is only available for Outlook 2010’s MAPI subsystem.  It will be eventually ported to Outlook 2013’s MAPI subsystem. I will update this blog post when that happens. [Edit: 1/23/2014 – This new interface did not ship in the December 2013 CU.  I was incorrect.  I am currently looking into it.] [Edit: 4/23/2014 –…

8

VSTO based Custom Task Panes (CTP) may cause memory leak in Outlook

I have been wanting to post this for awhile but never got around to it. I have only seen two cases of this so I guess my procrastination is justified.  If you are using Visual Studio Tools for Office 3.0 you may experience a memory leak when using Custom Task Panes (CTP) within Outlook.  There are…

1

It’s a dirty job but someone has to do it

Well here is just more of the same, Stephen posted about querying an item to see whether it’s “dirty” or not.  Here is the .NET equivalent. I didn’t actually test these this time so your feedback is welcome. Visual Basic Public Function IsItemDirty(ByVal itm As Object) As Boolean   Dim typeDispatch As Type = itm.GetType()   Dim…

0

Now you see me, now you don’t

My colleague Stephen Griffin recently blogged about how to show or hide the Sender Contact Photo feature in Outlook.  Since he only supplied the C++ version the product team asked me to supply the .NET version.  [Edit: 2/10/2014:  It has come to my attention that the code below will only work for Outlook 2010.  Support…

0

Managing Outlook Security Settings

I got a question today about if one could set the Outlook Security Settings programmatically instead of requiring the user to go through the dialog in the Outlook UI.  The answer is Yes, and the article below describes how to do it: How to Assign an S/MIME Certificate to a MAPI Profile for Use with Outlook…

0