IOleUndoManager::RedoTo 方法 (ocidl.h)

指示撤消管理器通过重做堆栈调用撤消操作,并包括指定的撤消单元。

语法

HRESULT RedoTo(
  [in] IOleUndoUnit *pUU
);

参数

[in] pUU

指向要恢复的顶级单位的 IOleUndoUnit 指针。 如果此参数为 NULL,则使用最近添加的顶级单位。

返回值

此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
E_INVALIDARG
指定的撤消单位不在重做堆栈上。
E_ABORT
撤消尝试和回滚尝试均失败。 撤消管理器绝不应传播从包含的撤消单元获取的E_ABORT。 相反,它应将从其他撤消单位返回的任何E_ABORT值映射到E_FAIL。
E_UNEXPECTED
撤消管理器已禁用。

注解

此方法在每个顶级撤消单元上调用 IOleUndoUnit::D o 方法。 然后,它释放该撤消单元。

请注意,指定的撤消单元必须是顶级单位,通常通过 IOleUndoManager::EnumRedoable 检索。

如果撤消单元返回错误,撤消管理器需要尝试通过对撤消堆栈执行操作来回滚文档的状态,以便从错误中恢复。

无论回滚是否成功,撤消管理器都应始终在返回错误之前清除这两个堆栈。

如果撤消管理器在多个顶级单元上调用了 IOleUndoUnit::D o 方法,则它应仅回滚返回错误的单元。 不应回滚成功的顶级单位。

撤消管理器还必须跟踪是否已将单元添加到相反的堆栈,以便在未添加任何内容时不会尝试回滚。 有关错误处理的详细说明,请参阅 IOleUndoManager 接口。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 ocidl.h

另请参阅

IOleUndoManager

IOleUndoManager::EnumRedoable

IOleUndoManager::UndoTo

IOleUndoUnit::D o