Udostępnij przez


Tworzenie programu obsługi Centrum synchronizacji systemu Windows

Ten temat zawiera szczegółowe badanie wymagań dotyczących tworzenia pliku DLL, który implementuje procedurę obsługi do użycia z Centrum synchronizacji. Te informacje są prawidłowe w systemie Windows Vista.

Środowisko synchronizacji systemu Windows przed Vista

System Windows XP dostarczył Menedżera Synchronizacji (mobsync.exe). Wiele urządzeń, takich jak odtwarzacze mp3, telefony komórkowe i kamery, dostarczało własne interfejsy synchronizacji zamiast używać Menedżera synchronizacji. Spowodowało to niespójne i niecentralizowane środowisko użytkownika.

Nowa funkcja Centrum synchronizacji dostępna w systemie Windows Vista ma kilka zalet w porównaniu ze starszym Menedżerem synchronizacji.

  • Lepsza możliwość odnajdywania
  • Mniejsza potrzeba bezpośredniej akcji użytkownika
  • Nie blokuje innych operacji
  • Lepsza wizualizacja postępu synchronizacji
  • Łatwiejsze zrozumienie modelu programowania

Interfejsy API centrum synchronizacji

Centrum synchronizacji komunikuje się z procedurami obsługi za pośrednictwem wielu interfejsów modelu obiektów składników (COM). Nie wszystkie te interfejsy są potrzebne do zaimplementowania programu obsługi Centrum synchronizacji. Ten temat został podzielony na dwie sekcje. W pierwszej sekcji opisano podstawowe interfejsy COM, które muszą obsługiwać każdy program obsługi, a druga sekcja analizuje opcjonalne interfejsy COM i analizuje przyczyny ich obsługi.

Podstawowe interfejsy

Wszystkie programy obsługi Centrum synchronizacji muszą obsługiwać następujące interfejsy:

ISyncMgrSyncItem i ISyncMgrSyncItemInfo służą do opisywania pojedynczego elementu synchronizacji zaangażowanego w synchronizację z Centrum synchronizacji. Element synchronizacji zazwyczaj reprezentuje określony typ danych (np. obrazy) lub określoną lokalizację danych.

Elementy synchronizacji reprezentujące różne lokalizacje danych umożliwiają bardzo konkretne synchronizacje. Stopień szczegółowości lokalizacji zależy od autora programu obsługi, ale należy zachować ostrożność przy projektowaniu. Jeśli istnieje zbyt mało elementów synchronizacji (lokalizacji), użytkownik jest ograniczony do możliwości synchronizowania tylko określonych danych. W drugiej skrajności zbyt wiele szczegółowości może stać się trudne do zarządzania.

Jeśli program obsługi obsługuje więcej niż jeden typ danych lub wiele lokalizacji danych, musi obsługiwać więcej niż jeden obiekt elementu synchronizacji. Przykładem może być asystent danych osobowych (PDA), który umożliwia użytkownikowi synchronizowanie kontaktów, elementów kalendarza i dokumentów. Te trzy typy danych muszą być reprezentowane przez trzy unikatowe obiekty, które uwidaczniają interfejsy ISyncMgrSyncItem i ISyncMgrSyncItemInfo.

Interfejs IEnumSyncMgrSyncItems udostępnia mechanizm wyliczania elementów synchronizacji zarządzanych przez program obsługi. Aby pobrać ten wyliczacz, Centrum synchronizacji wywołuje metodę ISyncMgrSyncItemContainer::GetSyncItemEnumerator udostępnioną przez program obsługi. ISyncMgrSyncItemContainer zawiera również dwie inne metody, których Centrum synchronizacji może użyć do pobierania informacji o elementach synchronizacji związanych z programem obsługi:

  • getSyncItem zwraca określony element synchronizacji.
  • getSyncItemCount zwraca liczbę elementów synchronizacji obsługiwanych przez program obsługi.

ISyncMgrHandler i ISyncMgrHandlerInfo są używane do opisywania właściwości handlera i uruchamiania rzeczywistej synchronizacji. ISyncMgrHandler::Synchronize to miejsce, w którym kod programu obsługi przeprowadza synchronizację i przekazuje informację zwrotną na temat postępu i wszelkich występujących problemów.

Wiele metod interfejsu nie musi być w pełni zaimplementowanych. Centrum synchronizacji udostępnia pewną ilość informacji domyślnych. Interfejsy umożliwiają programowi obsługi zastępowanie tych informacji i udostępnianie niestandardowych informacji do wyświetlania w razie potrzeby.