For performance, I am enumerating an Outlook mail folder using GetTable(). This gives me a collection of Row objects I can enumerate to get specific properties in the given folder. I can control the coluumns in my result using the Columns collection of the Table before I begin enumerating. Overall, this works fine. However, I can't figure out how to access any of the multi-values properties. Specifically, the I can't get any values back for the recipients of the message.
I have added the recipients column to the desired set of columns, but it always comes back null. I have inspected the associated messages with MFCMAPI and clearly there are recipients :-)
The documentation for GetTable says that certain types of columns are only partially supported. It does talk about Recipients:
Properties returning an object, such as Attachments, Parent, Recipients, RecurrencePattern, and UserProperties.
But it specifically says:
Not supported if property is referenced by its explicit built-in name; supported if property is referenced by its namespace.
I am referencing the property (using Columns.Add) using its namespace: http://schemas.microsoft.com/mapi/proptag/0x0E12000D. However, the value always comes back null.
Something is wrong! Can anybody provide me with an example of enumerating through recipients using the recipients property (PR_MESSAGE_RECIPIENTS) with GetTable?