Condividi tramite


Metodo IOleUndoUnit::D o (ocidl.h)

Indica all'unità di annullamento di eseguire l'azione. Si noti che se contiene unità di annullamento figlio, è necessario chiamare anche i metodi Do.

Sintassi

HRESULT Do(
  [in] IOleUndoManager *pUndoManager
);

Parametri

[in] pUndoManager

Puntatore al gestore di annullamento. Vedi IOleUndoManager.

Valore restituito

Questo metodo restituisce S_OK se l'operazione ha esito positivo.

Commenti

L'unità di annullamento è responsabile dell'esecuzione della sua azione. L'esecuzione di un'azione di annullamento personalizzata comporta un'altra azione che può essere potenzialmente invertita. Tuttavia, se pUndoManager è NULL, l'unità di annullamento deve eseguire l'azione di annullamento, ma non deve tentare di inserire alcun elemento nello stack di rollforward o annullamento.

Se pUndoManager non è NULL, l'unità deve inserire un'unità corrispondente nello stack di rollforward o annullamento. Di conseguenza, questo metodo si sposta nello stack di rollforward o annulla oppure crea una nuova unità di annullamento e la aggiunge allo stack appropriato. Dopo aver creato una nuova unità di annullamento, questa unità di annullamento chiama IOleUndoManager::Open o IOleUndoManager::Add. Il gestore di annullamento inserisce la nuova unità di annullamento nello stack di annullamento o rollforward a seconda dello stato corrente.

Un'unità padre deve passare ai relativi figli lo stesso manager di annullamento, possibilmente NULL, assegnato all'elemento padre. È consentito, ma non necessario, quando pUndoManager è NULL per aprire un'unità padre nello stack di rollforward o annullamento, purché non venga eseguito il commit. Un'unità padre bloccata garantisce che non venga aggiunto alcun elemento allo stack da unità figlio.

Se questa unità di annullamento è un'unità padre, deve inserirla nello stack di rollforward o annullamento prima di chiamare il metodo Do sui relativi elementi figlio.

Dopo aver chiamato questo metodo, il gestore di annullamento deve rilasciare l'unità di annullamento.

Note per gli implementatori

Vedere l'interfaccia IOleUndoManager per le strategie di gestione degli errori per le unità di annullamento. La strategia di gestione degli errori influisce sull'implementazione di questo metodo, in particolare per le unità padre.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ocidl.h

Vedi anche

IOleUndoManager::Add

IOleUndoManager::Open

IOleUndoUnit