I am writing a COM add-in for Outlook using C#. If a meeting was saved and invitations were not sent, Outlook puts a message at the top of the form saying the invitations have not been sent. How do I determine programmatically that invitations have not been sent for a meeting?
I tried examining each Recipient and checking the MeetingResponseStatus. I would expect it to be OlResponseNone if the invitation has not been sent but OlResponseNotResponded if the invitations have been sent but no responses have been received. However, I always get OlResponseNone for recipients that either haven’t been sent an invitation or that have but have not yet reponded. I therefore can’t tell apart a meeting where invitations haven’t been sent from one where they have been sent but no one has responded.
I’ve done most of my testing in Outlook 2007, but I believe the same holds true for 2003 and 2010, all of which I need to support.
I found a partial answer in this post. I need to read the DASL property “http://schemas.microsoft.com/mapi/id/{00020329-0000-0000-C000-000000000046}/80BE0102”. In Outlook 2007 and leter, you can do this with a PropertyAccessor as follows:
However, I need to also support Outlook 2003, and the PropertyAccessor property was added in Outlook 2007. I was therefore able to use Redemption’s RDOMail object with the following code (error handling omitted).