ISyncMgrUIOperation 接口 (syncmgr.h)

公开一种方法,同步处理程序或同步项可以在同步中心请求时显示 UI 对象。

继承

ISyncMgrUIOperation 接口继承自 IUnknown 接口。 ISyncMgrUIOperation 还具有以下类型的成员:

方法

ISyncMgrUIOperation 接口具有以下方法。

 
ISyncMgrUIOperation::Run

当同步中心请求时,为处理程序或同步项执行 UI 的实际显示。

注解

处理程序实现 ISyncMgrUIOperation ,为特定操作提供 UI。 (浏览、计划、启用/禁用、激活/停用和删除) 的每个单独操作都需要单独的实现。

处理程序应仅为要显示 UI 的操作实现此接口。

下面总结了同步中心实例化和使用此接口所要执行的步骤。

  1. 同步中心为 UI 操作创建单独的线程。
  2. 同步中心创建 处理程序的新实例。
  3. 如果操作仅涉及处理程序,则同步中心使用相应的SYNCMGR_OBJECTID对象 ID 调用 ISyncMgrHandler::GetObject,以获取指向实现该 UI 对象的 ISyncMgrUIOperation 的指针。 例如,同步中心使用 SYNCMGR_OBJECTID_QueryBeforeDelete 调用 ISyncMgrHandler::GetObject 以获取一个对象,当用户选择删除处理程序时,将调用该对象以显示 UI,并要求确认他们确实想要删除它。
  4. 如果操作涉及同步项,则同步中心会进行一系列调用,包括:
    1. ISyncMgrHandler 接口上调用 QueryInterface 以检索 ISyncMgrSyncItemContainer 的实例。
    2. 调用 ISyncMgrSyncItemContainer::GetSyncItem 以获取指向表示项的 ISyncMgrSyncItem 实例的指针。
    3. 使用相应的SYNCMGR_OBJECTID对象 ID 调用 ISyncMgrSyncItem::GetObject,以获取指向实现 UI 对象的 ISyncMgrUIOperation 的指针。
  5. 同步中心调用 UI 对象的 Run 方法来显示 UI。
通过将 UI 实现为单独的接口,UI 的显示可以独立于同步执行。 应在与 ISyncMgrHandler 或 ISyncMgrSyncItem 不同的对象上实现 ISyncMgrUIOperation

如果用户请求操作,然后在第一个操作完成之前再次请求该操作,则会激活初始操作的 UI 并将其带到前台。

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 syncmgr.h