July 2010 Release of MFCMAPI

The July 2010 Release (build 6.0.0.1020) July 2010 Second Release (build 6.0.0.1021) is live: https://mfcmapi.codeplex.com.

The scope of this release was primarily under the covers engineering, most notably to add SAL annotations. While adding these notations took seemingly forever, in the process I did run across a few potential crashing bugs, so the effort was worth it. It should pay off even more going forward.

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

  • SAL: Added SAL notation to all functions and fixed every bug exposed in doing so.
  • Restriction and Property Editors: both had problems with editing new data. These problems have been fixed. The restriction editor should be much better behaved now, and the property editor will handle “Edit Given Prop” on a new prop much better.
  • Import MSG: Can now import a .MSG file to an associated contents table. Useful for transferring views, rules, etc from one mailbox to another for testing purposes.
  • Windows 2000: I accidently killed Windows 2000 support a few versions back by calling a kernel32 function that isn’t implemented in Windows 2000. This call has been switched from static linking to dynamic, so MFCMAPI should again run on Windows 2000.
  • VC 6 support: Has now been completely cut. Sorry. The SAL header (sal.h) just doesn’t work in VC 6.0 and I didn’t feel it was worth the effort to wrap the SAL notation in #defines which I could turn off for the sake of VC 6.
  • [Added for 6.0.0.21] : Fixed stupid stupid bug where a dialog pops if you open the system menu, as will often happen if you right click the icon to close the app.

Enjoy.

[Edit, 7/27/2010: Added details about 6.0.0.1021]