Sdílet prostřednictvím


Použití Správce synchronizace z programu

Chcete-li aplikaci povolit práci se Správcem synchronizace, musíte implementovat objekt modelu COM (Component Object Model) pro zpracování oznámení synchronizace, která obdržíte ze SyncMgr. Obslužná rutina vaší aplikace provádí synchronizaci položek, které zpracováváte. Součástí obslužné rutiny je nutné implementovat rozhraní ISyncMgrSynchronize. Musíte také zadat objekt enumerátoru a ISyncMgrEnumItems pro všechny samostatné položky, které může vaše aplikace synchronizovat.

SyncMgr implementuje ISyncMgrSynchronizeCallback a ISyncMgrSynchronizeInvoke.

SyncMgr volá metody v ISyncMgrSynchronize, aby získal informace o položkách, které vaše aplikace zpracovává, a o obslužné rutině, kterou poskytujete pro synchronizaci těchto položek.

Za běhu se proces synchronizace řídí těmito kroky.

  1. SyncMgr upozorní vaši aplikaci, že je čas na synchronizaci u jedné z položek, které vaše aplikace zpracovává voláním metody ISyncMgrSynchronize::Initialize.
  2. SyncMgr volá ISyncMgrSynchronize::EnumSyncMgrItems, aby získal rozhraní ISyncMgrEnumItems pro položky zpracovávané vaší aplikací.
  3. SyncMgr volá ISyncMgrSynchronize::SetProgressCallback, aby poskytl vašemu zpracovateli ukazatel rozhraní pro rozhraní ISyncMgrSynchronizeCallback. Obslužná rutina používá toto rozhraní k volání zpět do SyncMgr během synchronizace.
  4. SyncMgr pak zavolá vaši ISyncMgrSynchronize::PrepareForSync metodu, která vašemu zpracovateli umožní zobrazit potřebný prvek rozhraní nezbytný před zahájením synchronizace. Například e-mailová aplikace může zobrazit přihlašovací dialogové okno uživatele.
  5. Obslužná rutina volá ISyncMgrSynchronizeCallback::EnableModeless před a po zobrazení prvků uživatelského rozhraní. Obslužná rutina volá ISyncMgrSynchronizeCallback::PrepareForSyncCompleted, když skončíte.
  6. SyncMgr volá vaši metodu ISyncMgrSynchronize::Synchronize ke spuštění synchronizace.

Během procesu synchronizace SyncMgr nadále volá metody v rozhraní ISyncMgrSynchronize. Může odesílat chyby, průběh a oznámení vašemu obslužnému modulu. Může také zobrazit výčet položek, které vaše aplikace zpracovává, nebo umožnit aplikaci zobrazit vlastnosti pro tyto položky.

Obslužná rutina volá metody v ISyncMgrSynchronizeCallback určit, jestli se má položka přeskočit, protokolovat chyby a publikovat informace o průběhu během procesu synchronizace.

Další informace najdete na souvisejících referenčních stránkách rozhraní.

Po dokončení synchronizace volá obslužná rutina ISyncMgrSynchronizeCallback::SynchronizeCompleted.