'Is it possible to change the Outlook appointment organizer using Redemption?

I have some meetings that were exported to PST's from another instance of Exchange and then were imported to our Exchange environment using the New-MailboxImportRequest PowerShell command.

Since these appointments are copies the organizer is not set to the proper value. In OutlookSpy I can open the appointment, click IMessage and GetRecipientTable. Here I can see that the organizer has a PidTagRecipientFlags value = 3. All other attendees have a value of 513 in the table. I want to change values for the organizer only in hopes that I can set the organizer correctly. This should enable the user to manage the meeting again to complete tasks like rescheduling and cancelling. I was attempting to update these properties (PidTag7BitDisplayName_W, PidTagDisplayName_W, PidTagEmailAddress_W, PidTagRecipientEntryId, PidTagMemberEntryId.) within the RecipientTable using OutlookSpy but they seem to be read only.

Is it possible to update these values programmatically using Redemption to change the organizer? If so can you provide a code sample to get me started? Thanks!



Solution 1:[1]

Sure, you can update recipient table properties using RDORecipient.Fields[]. Note that Recipient.PropertyAccessor.SetProperty is exposed by the Outlook Object Model, but Outlook will refuse to edit some of the properties. Redemption (I am its author) does not have that limitation.

OutlookSpy (I am also its author) will let you modify recipient table properties - as long as recipOrganizer bit (=2) is set, Outlook considers that user the organizer.

enter image description here

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Ryan M