Metodo IOleUndoUnit::OnNextAdd (ocidl.h)

Notifica all'ultima unità di annullamento della raccolta che è stata aggiunta una nuova unità.

Sintassi

HRESULT OnNextAdd();

Valore restituito

Le implementazioni di questo metodo restituiscono sempre S_OK. Il tipo restituito HRESULT viene usato solo per la remotabilità.

Commenti

Un oggetto può creare un'unità di annullamento per un'azione e aggiungerla alla gestione annullamento, ma può continuare a inserire i dati in esso tramite interfacce private. Quando l'unità di annullamento riceve una chiamata a questo metodo, comunica nuovamente all'oggetto di creazione che il contesto è cambiato. Quindi, l'oggetto di creazione arresta l'inserimento dei dati nell'unità di annullamento.

L'unità di annullamento padre chiama questo metodo nell'unità figlio aggiunta più di recente per notificare all'unità figlio che il contesto è stato modificato e che è stata aggiunta una nuova unità di annullamento.

Ad esempio, questo metodo viene usato per supportare azioni fuzzy, come la digitazione, che non hanno un punto chiaro di terminazione, ma vengono invece terminati solo quando accade qualcosa di altro.

Questo metodo potrebbe non essere sempre chiamato se il gestore annulla o un'unità padre aperta sceglie di eliminare l'unità chiamando invece IUnknown::Release . Qualsiasi connessione che genera dati all'unità di annullamento dietro le quinte tramite interfacce private non deve essere IUnknown::AddRef l'unità di annullamento.

Note per gli implementatori

Si noti che le unità padre delegano semplicemente questo metodo all'unità figlio aggiunta più di recente. Un'unità padre deve terminare la comunicazione tramite qualsiasi interfaccia privata quando viene chiusa. Un'unità padre sa che viene chiusa quando riceve S_FALSE chiamando IOleParentUndoUnit::Close.

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

IOleParentUndoUnit::Close

IOleUndoUnit