I'm developing an Outlook 2010 add-in to do some processing on certain incoming messages from an IMAP account. I need to be able to modify the message locally without it syncing back up with the underlying account. That way, the user sees the modifications locally (both in the explorer view and when the message is opened) but if they were to login from the web or another machine, the original message will still be there.
I have no problem performing the changes I need to do but I can't figure out a way so those changes are not persisted back to the server. I'm wondering if there is a NO_SYNC flag or some way to tell Outlook to ignore these processed messages when it does its syncing?
One solutions I've tried but don't particularly like includes making a copy of the message and moving the processed one to a local folder. I don't like it because it's not a good user experience having to deal with multiple "inboxes" plus there is extra logic involved making sure the same message is not processed twice, etc. I've also tried hooking SyncStart but that doesn't seem like it works either.
So is it even possible to just change what is displayed and not the actual message? Will this require a form region?