January 2011 Release of MFCMAPI and MrMAPI

The January 2011 Release (build 6.0.0.1024) is live: https://mfcmapi.codeplex.com.

This round of work had two foci: Speed startup time of MFCMAPI and MrMAPI, and add features to MrMAPI.

I have been ignoring startup time of MFCMAPI for a while now, since it started up “fast enough”. But MrMAPI was designed to be run in batch scripts, and a slow startup time really adds up over multiple runs. They share the same code, so any work improving one improves the other. I found a number of opportunities to squeeze cycles out by sorting some arrays in the source and by improving the algorithms I use to shuffle them around when we’re starting. But the biggest improvement will happen if you happen to run MFCMAPI or MrMAPI from a directory with a lot of other files in it, such as a tools directory. We get a great speedup by remembering which files are and are not add-ins to MFCMAPI, so we don’t keep retrying them.

Other than the speed-up work, MrMAPI got most of the love. I added a host of new features: Error lookup, guid lookup, ACL and Rule table exports, and nickname cache parsing are the big ones. I’ve also uploaded a 64 bit version of MrMAPI since some of the features actually log in to a profile, and we need to support 64 bit Outlook.

When you download the new version of MFCMAPI, make sure to download MrMAPI for all of your property tag needs.

Here's a change list - see the Issue Tracker on Codeplex for more details, or look at the code:

  • SmartView: Parse nickname cache.
  • MrMAPI: Error lookup – mostly MAPI errors
  • MrMAPI: GUID lookup – every GUID MFCMAPI knows can be searched
  • MrMAPI: Smartview can now accept either hex or binary files with the –b switch
  • MrMAPI: Help banner: tells what MrMAPI can do.
  • Startup optimization
  • Smartview: Parse PR_FORM_HOST_MAP

Enjoy.