Partager via


IMAPIMessageSite::DeleteMessage

S’applique à : Outlook 2013 | Outlook 2016

Supprime le message actuel.

HRESULT DeleteMessage(
  LPMAPIVIEWCONTEXT pViewContext,
  LPCRECT prcPosRect
);

Paramètres

pViewContext

[in] Pointeur vers un objet de contexte d’affichage.

prcPosRect

[in] Pointeur vers une structure RECT qui contient la taille et la position de la fenêtre du formulaire actuel. Le formulaire suivant qui s’affiche utilise également ce rectangle de fenêtre.

Valeur renvoyée

S_OK

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

MAPI_E_NO_SUPPORT

L’opération n’est pas prise en charge par ce site de message.

Remarques

Un objet form appelle la méthode IMAPIMessageSite ::D eleteMessage pour supprimer le message que le formulaire affiche actuellement.

Remarques pour les appelants

Après le retour de DeleteMessage, les objets de formulaire doivent case activée pour un nouveau message, puis se fermer eux-mêmes s’il n’en existe aucun. Pour déterminer si le message DeleteMessage a été supprimé ou déplacé vers un dossier Éléments supprimés , un objet de formulaire peut appeler la méthode IMAPIMessageSite ::GetSiteStatus pour déterminer si l’indicateur DELETE_IS_MOVE a été retourné.

Remarques pour les responsables de l’implémentation

Si l’implémentation d’une visionneuse de formulaires de la méthode DeleteMessage passe au message suivant après avoir supprimé un message, l’implémentation doit appeler la méthode IMAPIViewContext ::ActivateNext et passer l’indicateur VCDIR_DELETE avant d’effectuer la suppression réelle. Si l’implémentation de DeleteMessage d’une visionneuse de formulaires déplace le message supprimé (par exemple, vers un dossier Éléments supprimés ), l’implémentation doit enregistrer les modifications apportées au message si le message a été modifié.

Une implémentation classique de DeleteMessage effectue les tâches suivantes :

  1. Si l’implémentation déplace le message, elle appelle la méthode IPersistMessage ::Save , en passant null dans le paramètre pMessage et true dans le paramètre fSameAsLoad .

  2. Il appelle la méthode IMAPIViewContext ::ActivateNext , en passant l’indicateur VCDIR_DELETE dans le paramètre ulDir .

  3. Si l’appel ActivateNext échoue, il est retourné. Si ActivateNext retourne S_FALSE, il appelle la méthode IPersistMessage ::HandsOffMessage .

  4. Il supprime ou déplace le message.

Pour obtenir la structure RECT utilisée par la fenêtre d’un formulaire, appelez la fonction Windows GetWindowRect .

Pour obtenir la liste des interfaces liées aux serveurs de formulaires, consultez Interfaces de formulaire MAPI.

Référence MFCMAPI

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

Fichier Fonction Commentaire
MyMAPIFormViewer.cpp
CMyMAPIFormViewer ::D eleteMessage
Non implémenté.

Voir aussi

IMAPIMessageSite::GetSiteStatus

IMAPIViewContext::ActivateNext

IPersistMessage::HandsOffMessage

IPersistMessage::Save

IMAPIMessageSite : IUnknown

MFCMAPI comme un exemple de Code

Interfaces de formulaire MAPI