IPersistMessage::SaveCompleted
S’applique à : Outlook 2013 | Outlook 2016
Avertit le formulaire qu’une opération d’enregistrement a été effectuée.
HRESULT SaveCompleted(
LPMESSAGE pMessage
);
Paramètres
pMessage
[in] Pointeur vers le message qui vient d’être enregistré.
Valeur renvoyée
S_OK
La notification a réussi.
E_INVALIDARG
Le paramètre pMessage est NULL et le formulaire est dans l’état HandsOffFromNormal ou HandsOffAfterSave .
E_UNEXPECTED
Le formulaire n’est pas dans l’un des états suivants :
HandsOffFromNormal
HandsOffAfterSave
Remarques
La méthode IPersistMessage ::SaveCompleted est appelée par une visionneuse de formulaires pour informer le formulaire que toutes les modifications en attente ont été enregistrées. SaveCompleted doit être appelé uniquement lorsque le formulaire est dans l’un des états suivants :
HandsOffFromNormal
HandsOffAfterSave
NoScribble
Remarques pour les responsables de l’implémentation
La méthode SaveCompleted peut effectuer plusieurs actions possibles, en fonction de ce que contient le paramètre de pointeur de message et de l’état dans lequel se trouve le message. Toutefois, lorsqu’une action réussit, enregistrez toujours l’état actuel du message vers lequel pointe le paramètre pMessage et faites passer le formulaire à son état Normal .
Le tableau suivant décrit les conditions qui affectent les actions que vous devez effectuer dans votre implémentation de SaveCompleted.
Condition | Action |
---|---|
Le paramètre pMessage est NULL et le paramètre fSameAsLoad de la méthode IPersistMessage ::Save a la valeur TRUE. | Appelez la méthode IMAPIViewAdviseSink ::OnSaved de toutes les visionneuses inscrites, marquez le formulaire comme propre et retournez S_OK. |
Le paramètre pMessage est NULL et le paramètre fSameAsLoad de la méthode IPersistMessage ::Save a la valeur FALSE. | Elles retournent S_OK. |
Le formulaire est dans l’état HandsOffFromNormal. | Relâchez le message actuel et remplacez-le par le message désigné par le paramètre pMessage . Appelez la méthode IUnknown ::AddRef du message de remplacement et retournez S_OK. |
Le formulaire est dans l’état HandsOffAfterSave. | Appelez la méthode IMAPIViewAdviseSink ::OnSaved de toutes les visionneuses inscrites, marquez le formulaire comme propre et retournez S_OK. |
Le formulaire est dans l’état NoScribble . | Relâchez le message actuel et remplacez-le par le message désigné par pMessage. Appelez la méthode IUnknown ::AddRef du message de remplacement. Appelez la méthode IMAPIViewAdviseSink ::OnSaved de toutes les visionneuses inscrites, marquez le formulaire comme propre et retournez S_OK. |
Le formulaire est dans l’un des états HandsOff et le paramètre pMessage est défini sur NULL. | Retournez E_INVALIDARG. |
Le formulaire est dans un état autre que l’un des états HandsOff ou NoScribble. | Retourne E_UNEXPECTED. |
Pour plus d’informations sur l’enregistrement des objets de stockage, consultez la documentation des méthodes IPersistStorage ::SaveCompleted ou IPersistFile ::SaveCompleted .