Partager via


IOleUndoManager::D iscardFrom, méthode (ocidl.h)

Indique au gestionnaire d’annulation d’ignorer l’unité d’annulation spécifiée et toutes les unités d’annulation en dessous sur la pile d’annulation ou de restauration par progression.

Syntaxe

HRESULT DiscardFrom(
  [in] IOleUndoUnit *pUU
);

Paramètres

[in] pUU

Pointeur IOleUndoUnit vers l’unité d’annulation à ignorer. Ce paramètre peut être NULL pour ignorer l’intégralité de la pile d’annulation ou de restauration par progression. Si le paramètre n’est pas NULL , la pile n’est pas ignorée.

Valeur retournée

Cette méthode retourne S_OK en cas de réussite. Les autres valeurs de retour possibles sont les suivantes.

Code de retour Description
E_INVALIDARG
L’unité d’annulation spécifiée est introuvable dans les piles.
E_UNEXPECTED
Le gestionnaire d’annulation est désactivé.

Notes

Le gestionnaire d’annulation recherche d’abord l’unité donnée dans la pile d’annulation et, s’il n’y est pas trouvé, recherche la pile de restauration par progression. Une fois qu’il a été trouvé, l’unité donnée et tout ce qui se trouve en dessous sur la même pile sont ignorés. L’unité d’annulation peut être un enfant d’une unité parente contenue par le gestionnaire d’annulation, comme déterminé en appelant IOleParentUndoUnit::FindUnit. S’il s’agit d’une unité enfant, l’unité racine contenant l’unité donnée et toutes les unités en dessous sur la pile appropriée sont ignorées.

S’il existe une unité parente ouverte et que la méthode DiscardFrom est appelée et que le paramètre pUU a la valeur NULL, le gestionnaire d’annulation doit immédiatement libérer et ignorer l’unité parente ouverte sans appeler d’abord IOleUndoManager::Close . Lorsque l’objet qui a ouvert l’unité parente tente de la fermer, IOleUndoManager::Close retourne S_FALSE. Si une unité parente est ouverte, jetez-la et ignorez la pile. Si l’unité parente n’est pas ouverte, jetez simplement la pile. Si le paramètre pUU n’est pas NULL, toutes les unités parentes ouvertes doivent être laissées ouvertes.

Spécifications

   
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

IOleParentUndoUnit::FindUnit

IOleUndoManager

IOleUndoManager::Close