我发现如果我使用IMAPIFolder::CopyMessages(使用 MESSAGE_MOVE 标志)移动消息,则消息会获得一个新的条目 ID。但是,我看不到任何可靠的方法可以在新位置获取消息的条目 ID,或者以其他方式获取对它的引用。
到目前为止,我得到的最好的建议是在移动之前用旧的自定义属性标记消息,然后再进行搜索,但我想知道是否有一个不那么复杂的解决方案。
我发现如果我使用IMAPIFolder::CopyMessages(使用 MESSAGE_MOVE 标志)移动消息,则消息会获得一个新的条目 ID。但是,我看不到任何可靠的方法可以在新位置获取消息的条目 ID,或者以其他方式获取对它的引用。
到目前为止,我得到的最好的建议是在移动之前用旧的自定义属性标记消息,然后再进行搜索,但我想知道是否有一个不那么复杂的解决方案。
PR_SEARCH_KEY 属性在移动后应该保持不变。您仍然需要在移动后搜索消息,但它确实消除了仅用于标记消息的自定义属性。
另一种可能性是在移动消息之前在目标文件夹上使用IMAPIAdviseSink设置通知。我没有亲自做过这件事,它可能比它的价值更多。