Compartir a través de


Método IOleUndoManager::D iscardFrom (ocidl.h)

Indica al administrador de deshacer que descarte la unidad de deshacer especificada y todas las unidades de deshacer debajo de ella en la pila de deshacer o rehacer.

Sintaxis

HRESULT DiscardFrom(
  [in] IOleUndoUnit *pUU
);

Parámetros

[in] pUU

Puntero IOleUndoUnit a la unidad de deshacer que se va a descartar. Este parámetro puede ser NULL para descartar toda la pila de deshacer o rehacer. Si el parámetro no es NULL , no se descartará la pila.

Valor devuelto

Este método devuelve S_OK cuando funciona correctamente. Otros posibles valores devueltos son los siguientes.

Código devuelto Descripción
E_INVALIDARG
No se encontró la unidad de deshacer especificada en las pilas.
E_UNEXPECTED
El administrador de deshacer está deshabilitado.

Comentarios

El administrador de deshacer busca primero la pila de deshacer de la unidad especificada y, si no se encuentra, busca en la pila de rehacer. Una vez encontrada, se descarta la unidad especificada y todas las debajo de ella en la misma pila. La unidad de deshacer puede ser un elemento secundario de una unidad primaria contenida en el administrador de deshacer, según se determine mediante una llamada a IOleParentUndoUnit::FindUnit. Si es una unidad secundaria, se descarta la unidad raíz que contiene la unidad especificada y todas las unidades debajo de ella en la pila adecuada.

Si hay una unidad primaria abierta y se llama al método DiscardFrom y el parámetro pUU es NULL, el administrador de deshacer debe liberarse inmediatamente y descartar la unidad primaria abierta sin llamar primero a IOleUndoManager::Close . Cuando el objeto que abrió la unidad primaria intenta cerrarlo, IOleUndoManager::Close devolverá S_FALSE. Si una unidad primaria está abierta, deséchela y descarte la pila. Si la unidad primaria no está abierta, simplemente tire la pila. Si el parámetro pUU no es NULL, las unidades primarias abiertas deben dejarse abiertas.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ocidl.h

Consulte también

IOleParentUndoUnit::FindUnit

IOleUndoManager

IOleUndoManager::Close