Partager via


IMessage::SubmitMessage

S’applique à : Outlook 2013 | Outlook 2016

Enregistre toutes les propriétés du message et marque le message comme prêt à être envoyé.

HRESULT SubmitMessage(
  ULONG ulFlags
);

Paramètres

ulFlags

[in] Masque de bits des indicateurs utilisés pour contrôler la façon dont un message est envoyé. L’indicateur suivant peut être défini :

FORCE_SUBMIT

MAPI doit envoyer le message immédiatement. Cet indicateur n’est pas en cours d’utilisation.

Valeur renvoyée

S_OK

L'appel a r�ussi et a renvoy� la valeur attendue ou les valeurs.

MAPI_E_NO_RECIPIENTS

La table des destinataires du message est vide.

Remarques

La méthode IMessage ::SubmitMessage marque un message comme prêt à être transmis. MAPI transmet les messages au système de messagerie sous-jacent dans l’ordre dans lequel ils sont marqués pour l’envoi. En raison de cette fonctionnalité, un message peut rester dans une banque de messages pendant un certain temps avant que le système de messagerie sous-jacent puisse en assumer la responsabilité. L’ordre de réception à la destination est sous le contrôle du système de messagerie sous-jacent et ne correspond pas nécessairement à l’ordre dans lequel les messages ont été envoyés.

Remarques pour les responsables de l’implémentation

Appelez la méthode IMAPIProp ::SaveChanges du message pour l’enregistrer, puis case activée la propriété PR_MESSAGE_FLAGS (PidTagMessageFlags) du message. Si l’indicateur MSGFLAG_RESEND est défini, appelez IMAPISupport ::P repareSubmit. PrepareSubmit met à jour le type de destinataire et la propriété PR_RESPONSIBILITY (PidTagResponsibility) pour tous les destinataires du message de renvoi.

Remarques pour les appelants

Lorsque SubmitMessage est retourné, tous les pointeurs vers le message et ses sous-objets associés messages, dossiers, pièces jointes, flux, tables, etc. ne sont plus valides. MAPI n’autorise aucune autre opération sur ces pointeurs, à l’exception de l’appel de leurs méthodes IUnknown ::Release . MAPI est conçu de telle sorte qu’après l’appel de SubmitMessage , vous devez libérer le message et tous les sous-objets associés. Toutefois, si SubmitMessage retourne une valeur d’erreur indiquant des informations manquantes ou non valides, le message reste ouvert et les pointeurs restent valides.

Pour annuler une opération d’envoi, obtenez et stockez un pointeur vers la propriété PR_ENTRYID (PidTagEntryId) du message avant l’envoi du message. Étant donné que l’identificateur d’entrée d’un message est invalidé après l’envoi du message, il est nécessaire de l’enregistrer avant d’appeler SubmitMessage. Pour annuler l’envoi, pointez le paramètre lpEntryId vers cet identificateur d’entrée et appelez IMsgStore ::AbortSubmit.

Référence MFCMAPI

Pour voir un exemple de code MFCMAPI, consultez le tableau suivant.

Fichier Fonction Commentaire
FolderDlg.cpp
CFolderDlg ::OnSubmitMessage
MFCMAPI utilise la méthode IMessage ::SubmitMessage pour envoyer le message sélectionné.

Voir aussi

IMsgStore::AbortSubmit

IMessage : IMAPIProp

MFCMAPI comme un exemple de Code