IOleUndoManager::D iscardFrom 方法 (ocidl.h)
指示覆原管理員捨棄指定的復原單位,以及復原或重做堆疊上其下方的所有復原單位。
語法
HRESULT DiscardFrom(
[in] IOleUndoUnit *pUU
);
參數
[in] pUU
要捨棄之復原單位的 IOleUndoUnit 指標。 此參數可以是 Null ,可捨棄整個復原或重做堆疊。 如果參數不是 Null ,則不會捨棄堆疊。
傳回值
此方法會在成功時傳回S_OK。 其他可能的傳回值包括下列專案。
傳回碼 | 描述 |
---|---|
|
在堆疊中找不到指定的復原單位。 |
|
復原管理員已停用。 |
備註
復原管理員會先搜尋指定單位的復原堆疊,如果找不到,則會搜尋重做堆疊。 找到之後,會捨棄位於相同堆疊上的指定單位及其下方的所有單位。 復原單位可能是復原管理員所包含父單位的子系,由呼叫 IOleParentUndoUnit::FindUnit所決定。 如果是子單位,則會捨棄包含指定單位的根單位,以及適當堆疊上其下方的所有單位。
如果有開啟的父單位,而且呼叫 DiscardFrom 方法且 pUU 參數為 Null,則復原管理員應該立即釋放並捨棄開啟的父單位,而不先呼叫 IOleUndoManager::Close 。 當開啟父單位的物件嘗試關閉它時, IOleUndoManager::Close 會傳回S_FALSE。 如果父單位已開啟,請將它擲回並捨棄堆疊。 如果父單位未開啟,只要將堆疊擲回即可。 如果 pUU 參數不是 Null,則任何開啟的父單位都應該保持開啟狀態。
需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | ocidl.h |