J'ai trouvé que si je déplace un message en utilisant IMAPIFolder::CopyMessages (en utilisant le drapeau MESSAGE_MOVE) le message obtient un nouvel ID d'entrée. Cependant, je ne vois aucun moyen fiable d'obtenir l'ID d'entrée du message dans son nouvel emplacement, ou sinon obtenir une référence à celui-ci. La meilleure suggestion que j'ai eu jusqu'à présent consiste à étiqueter le message avec l'ancienne propriété personnalisée avant de déplacer, puis de faire une recherche par la suite, mais je me demandais s'il y avait une solution moins compliquée.MAPI étendu: comment obtenir l'ID d'entrée de messages déplacés par CopyMessages
1
A
Répondre
2
La propriété PR_SEARCH_KEY doit rester la même après le déplacement. Vous devez toujours rechercher le message après le déplacement, mais il supprime la propriété personnalisée uniquement pour marquer les messages.
Une autre possibilité consiste à configurer des notifications en utilisant IMAPIAdviseSink sur le dossier de destination avant de déplacer les messages. Je ne l'ai pas fait personnellement, et ça pourrait être plus de travail que ça en vaut la peine.