Отображение хода выполнения синхронизации файлов
Приложение может отслеживать ход выполнения синхронизации путем регистрации полученных уведомлений, возникающих в процессе синхронизации.
Управляемый код Включите регистрацию получаемых событий из объекта FileSyncProvider, например события CopyingFile, которое возникает периодически и показывает ход выполнения копирования файла. Можно также взять событие AppliedChange, которое возникает, когда к файлу применяется изменение.
Неуправляемый код Передайте объект IFileSyncProviderCallback методу IFileSyncProvider::Initialize. Методы IFileSyncProviderCallback вызываются при возникновении событий, например события IFileSyncProviderCallback::OnFileCopyProgress, которое возникает периодически и показывает ход копирования файла, либо события IFileSyncProviderCallback::OnChangeApplied, которое возникает при применении изменения к файлу.
Режим предварительного просмотра
Приложение может переключить службу в режим предварительного просмотра с помощью значения true для свойства PreviewMode (управляемый код) или путем передачи значения TRUE в метод IFileSyncProvider::SetPreviewMode (неуправляемый код) перед тем, как метод запустит синхронизацию. В режиме предварительного просмотра служба обнаруживает изменения и создает события аналогично обычному сеансу синхронизации. Однако в действительности служба не применяет никаких изменений к реплике назначения и не отправляет события AppliedChange (управляемый код) или IFileSyncProviderCallback::OnChangeApplied (неуправляемый код).
Отображение хода выполнения
Для отображения хода выполнения во время сеанса синхронизации выполните следующие действия.
Управляемый код
Зарегистрируйте обработку события ApplyingChange.
Включите в службе режим предварительного просмотра. Для этого задайте для свойства PreviewMode значение true.
Запустите синхронизацию и подсчитайте, сколько всего раз было создано событие ApplyingChange.
Зарегистрируйте обработку события AppliedChange.
Отключите в службе режим предварительного просмотра. Для этого задайте для свойства PreviewMode значение false.
Запустите синхронизацию. При возникновении события AppliedChange показатель хода синхронизации может стремиться к числу изменений, подсчитанному при выполнении синхронизации в режиме предварительного просмотра.
Неуправляемый код
Зарегистрируйте получение ответного вызова IFileSyncProviderCallback::OnApplyingChange.
Включите в службе режим предварительного просмотра. Для этого передайте значение TRUE в метод IFileSyncProvider::SetPreviewMode.
Запустите синхронизацию и подсчитайте, сколько всего раз было вызвано событие OnApplyingChange.
Зарегистрируйте получение ответного вызова IFileSyncProviderCallback::OnChangeApplied.
Отключите в службе режим предварительного просмотра. Для этого передайте значение FALSE в метод IFileSyncProvider::SetPreviewMode.
Запустите синхронизацию. При вызове события OnChangeApplied показатель хода синхронизации может стремиться к числу изменений, подсчитанному при выполнении синхронизации в режиме предварительного просмотра.