從程式使用同步處理管理員

若要讓您的應用程式使用同步處理管理員,您必須將元件物件模型 (COM) 物件,以處理從 SyncMgr 接收的同步處理通知。 您應用程式的處理常式會針對您處理的專案執行同步處理。 包含在您的處理常式中,您必須執行 ISyncMgrSynchronize 介面。 此外,您必須提供列舉值物件,並 ISyncMgrEnumItems 您的應用程式可以同步處理的任何個別專案。

SyncMgr 會實行 ISyncMgrSynchronizeCallbackISyncMgrSynchronizeInvoke

SyncMgr 會在您的 ISyncMgrSynchronize 中呼叫方法,以取得應用程式所處理專案的相關資訊,以及您提供來同步處理這些專案之處理常式的相關資訊。

在執行時間,同步處理常式會遵循下列步驟。

  1. SyncMgr 會通知您的應用程式,它是指您的應用程式透過呼叫 ISyncMgrSynchronize:: Initialize 方法所處理的其中一個專案進行同步處理的時間。
  2. SyncMgr 會呼叫 ISyncMgrSynchronize:: EnumSyncMgrItems ,以取得應用程式所處理專案的 ISyncMgrEnumItems 介面。
  3. SyncMgr 會呼叫 ISyncMgrSynchronize:: SetProgressCallback ,為您的處理常式提供 ISyncMgrSynchronizeCallback 介面的介面指標。 在同步處理期間,您的處理常式會使用這個介面回呼 SyncMgr。
  4. 接著,SyncMgr 會呼叫您的 ISyncMgrSynchronize::P repareforsync 方法,讓您的處理常式有機會顯示在開始同步處理之前所需的任何使用者介面元素。 例如,電子郵件應用程式可能會顯示使用者登入對話方塊。
  5. 在顯示任何使用者介面元素之前和之後,您的處理常式會呼叫 ISyncMgrSynchronizeCallback:: EnableModeless 。 當您完成時,您的處理常式會呼叫 ISyncMgrSynchronizeCallback::P repareforsynccompleted
  6. SyncMgr 會呼叫您的 ISyncMgrSynchronize:: Synchronize 方法來開始同步處理。

在同步處理常式期間,SyncMgr 會繼續呼叫 ISyncMgrSynchronize 介面中的方法。 它可以傳送處理常式錯誤、進度和通知。 它也可以列舉應用程式所處理的專案,或允許您的應用程式顯示專案的屬性。

您的處理常式會在 ISyncMgrSynchronizeCallback 中呼叫方法,以判斷是否應該略過專案、記錄錯誤,以及在同步處理期間張貼進度資訊。

如需詳細資訊,請參閱相關介面的相關參考頁面。

當同步處理完成時,您的處理常式會呼叫 ISyncMgrSynchronizeCallback:: SynchronizeCompleted