Partager via


IOleUndoUnit ::D o, méthode (ocidl.h)

Indique à l’unité d’annulation d’effectuer son action. Notez que s’il contient des unités d’annulation enfants, il doit également appeler leurs méthodes Do.

Syntaxe

HRESULT Do(
  [in] IOleUndoManager *pUndoManager
);

Paramètres

[in] pUndoManager

Pointeur vers le gestionnaire d’annulation. Consultez IOleUndoManager.

Valeur retournée

Cette méthode retourne S_OK en cas de réussite.

Remarques

L’unité d’annulation est responsable de l’exécution de son action. L’exécution de sa propre action d’annulation entraîne une autre action qui peut potentiellement être inversée. Toutefois, si pUndoManager a la valeur NULL, l’unité d’annulation doit effectuer son action d’annulation, mais ne doit pas tenter de placer quoi que ce soit sur la pile de restauration ou d’annulation.

Si pUndoManager n’a pas la valeur NULL, l’unité est nécessaire pour placer une unité correspondante sur la pile de restauration par progression ou d’annulation. Par conséquent, cette méthode se déplace elle-même vers la pile de restauration par progression ou d’annulation, ou elle crée une unité d’annulation et l’ajoute à la pile appropriée. Après avoir créé une unité d’annulation, cette unité d’annulation appelle IOleUndoManager ::Open ou IOleUndoManager ::Add. Le gestionnaire d’annulation place la nouvelle unité d’annulation sur la pile d’annulation ou de restauration par progression en fonction de son état actuel.

Une unité parente doit transmettre à ses enfants le même gestionnaire d’annulation, éventuellement NULL, que celui qui a été donné au parent. Il est autorisé, mais non nécessaire, lorsque pUndoManager a la valeur NULL d’ouvrir une unité parente sur la pile de restauration ou d’annulation tant qu’elle n’est pas validée. Une unité parente bloquée garantit que rien n’est ajouté à la pile par les unités enfants.

Si cette unité d’annulation est une unité parente, elle doit se placer sur la pile de restauration par progression ou d’annulation avant d’appeler la méthode Do sur ses enfants.

Après avoir appelé cette méthode, le gestionnaire d’annulation doit libérer l’unité d’annulation.

Remarques aux implémenteurs

Consultez l’interface IOleUndoManager pour connaître les stratégies de gestion des erreurs pour les unités d’annulation. La stratégie de gestion des erreurs affecte l’implémentation de cette méthode, en particulier pour les unités parentes.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête ocidl.h

Voir aussi

IOleUndoManager ::Add

IOleUndoManager ::Open

IOleUndoUnit