** The following article is for only the Exchange MAPI / CDO download.  Outlook users will not have to use these steps.  Also this configuration may not work on previous versions of Exchange.

  1. Open up MFCMAPI, go to Profile > Launch Profile Wizard > Click OK
  2. Then Click Next
  3. Add the name of your Client Access Server, click Next
  4. Click Next
  5. Click Finish
  6. Go To Profile > Show Profiles, select the profile you just created
  7. Select the only service there and double click it
  8. Find the Global Profile Section.  It's the provider with the PROVIDER_UID that is 13DBB0C8AA05101A9BB000AA002FC45A and single click itExchange User Guid
  9. Select PR_PROFILE_CONNECT_FLAGS and set it equal to 0x8000 (CONNECT_IGNORE_NO_PF)
  10. Select PR_PROFILE_UI_STATE and set it equal to 0x4000 (EDK_PROFILEUISTATE_ENCRYPTNETWORK)
  11. Close all dialogs until the default dialog appears.
  12. Select Session > Logon and display store, and select the profile if not already selected

Once you have the profile working in MFCMAPI, you can do the same thing programmatically.

Notes:

You can also walk through the manual way (Profile > Shows Profile > Create Profile, etc) of creating a profile in MFCMAPI but I will leave that as an experiment for the reader.

You must be using the Exchange 2010 RC or higher for these instructions to work

You will need to disable encryption to use the Exchange MAPI / CDO download.  This should be fixed by RTM (See Below).  To disable encryption please run the following cmdlet:

Set-RpcClientAccess -Server <FQDN of CAS> -EncryptionRequired: $false

Additional Resources:

http://mfcmapi.codeplex.com/

http://blogs.msdn.com/stephen_griffin/archive/2008/07/14/getting-a-referral-from-exchange-2007.aspx

http://blogs.msdn.com/stephen_griffin/archive/2007/03/19/mapi-and-exchange-2007.aspx

[Edit: 11/23] The fix for requiring MAPI encryption is made in the Exchange CDO / MAPI download and will be available in the next refresh of that component which is currently scheduled for early December.

[Edit: 12/22] The fix for requiring MAPI encryption is now available. You can download it here: http://www.microsoft.com/downloads/details.aspx?familyid=E17E7F31-079A-43A9-BFF2-0A110307611E&displaylang=en

[Edit: 5/27/2013] If you have an Exchange 2013 Server in your organization you need to use the RpcHttpProxyMap registry value and version 6.5.8309 to connect to any mailboxes on it.  I detail this registry value in the post here.

[Edit: 7/8/2014] Added a screenshot for the Global Profile Section