ProfileProp – Examine Profile Properties

I’ve had some requests lately to write a MAPI sample that shows how to access profile properties programmatically, so I threw this together from some bits and pieces of code I had laying around. I had the chance to incorporate a few cool features in this code: MultiEx: It loops over the profile services looking…


Developing Apps For Office

So – I’ve been playing a lot with Apps for Office lately. I even wrote and published an app: My management encouraged me to put together a presentation on everything I learned while developing this app. I did, and they asked me to record a video of me delivering this presentation. So – now…


Updating Recipients From Outlook Add-Ins

Suppose you had an Exchange Client Extension in which you hooked events such as IExchExtMessageEvents::OnCheckNames. From this event, you’d get an IExchExtCallBack interface from which you could use the functions GetRecipients and SetRecipients to modify the recipient collection. Now suppose you’re trying to convert this code to an Outlook Add-In so you can work with…


Let’s Try To Hash This Out

[This is now documented here: ] A few years ago, I blogged an algorithm to calculate the hash used by Windows Search in MAPI urls. This algorithm is now enshrined in the MSDN. I’ve been asked by development to blog some augmentations to this algorithm to bring it more in line with what we…



[This is now documented here:] If you’re like me, you spend your time using Depends to see what kinds of new and exciting functions are exported every time there’s a new release of Outlook. Ok – so I don’t really do that, but development did ask me to document one of those functions. Here…


You Dirty Rat

[This is now documented here: ] Another in the series of APIs Development asked me to document. This time, it’s a property you can request via IDispatch to ask if an item is dirty or not. Same as last time, I didn’t test this code, so I’d appreciate feedback. dispidFDirty This property is used…


No Photos Please

[This is now documented here: ] [This API no longer functions in Outlook 2013 – it is Outlook 2010 only] Development recently asked that I document a few oddball Outlook APIs. Here’s the first – a way to turn the Sender Contact Photo feature on or off in a particular inspector or explorer window….


SetAA – Tweak Auto Accept Settings Across Mailboxes

This is a tool/sample I’ve had sitting on my drive ever since the DST changes back in 2007. Until recently, this tool used internal MAPI properties and algorithms, which meant I couldn’t share the source. The Exchange Protocol docs have changed that, so I thought I’d clean the tool up and publish it so everyone…


EnumAccounts Sample and Some New Account Management Props

[This is now documented here: ] A while back, Jason posted an Account Management API sample. I’ve threatened promised before that I would post an update to this sample, and I finally got around to it. You can download the updated sample here. In addition to adding a –W command to call DisplayAccountList and…


GCReconnect: Please Don’t Delete the Profile

I had some extra time today, so I put together updates I’ve been working on for the GCReconnect sample/tool which we use to demonstrate/test referrals. The key addition here is an oft requested switch, –k, which requests that we keep the profile that GCReconnect built. I’ve posted the updated sample here. C:>gcreconnect Creates a profile,…