共用方式為


ISupportLastWriteTime 介面

表示同步處理提供者,能夠回報上次變更項目或變更單位的日期和時間。這項功能對於實作最後寫入者取得優先衝突解決的應用程式相當實用。

interface ISupportLastWriteTime : IUnknown

成員

ISupportLastWriteTime 方法

描述

ISupportLastWriteTime::GetItemChangeTime

取得上次變更指定之項目的日期和時間。

ISupportLastWriteTime::GetChangeUnitChangeTime

取得上次變更指定之變更單位時的日期和時間。

備註

這個介面通常會由提供者實作。如果提供者實作此介面,將 IID_ISupportLastWriteTime 傳遞至其資料傳輸介面的 QueryInterface 方法時,必須傳回該介面的指標。資料傳輸介面是一種介面,提供者會傳回該介面來回應 ISynchronousDataRetriever::LoadChangeData 方法。

若要實作最後寫入者取得優先衝突解決,應用程式通常會執行下列步驟:

  1. 註冊 ISyncCallback 物件以接收衝突通知。

  2. ISyncCallback::OnConflict 方法中,針對 IChangeConflict 物件呼叫 IChangeConflict::GetDestinationProviderConflictingDataIChangeConflict::GetSourceProviderConflictingData,來取得衝突變更的資料傳輸介面。

  3. IID_ISupportLastWriteTime 傳遞至每個資料傳輸介面的 QueryInterface 方法,來取得代表衝突變更的 ISupportLastWriteTime 物件。

  4. 針對 ISupportLastWriteTime 物件呼叫 GetItemChangeTimeGetChangeUnitChangeTime 來取得上次進行變更的日期和時間。

  5. 比較日期和時間值,以判斷哪一個是最後所做的變更。

  6. 使用 IChangeConflict::SetResolveActionForChangeIChangeConflict::SetResolveActionForChangeUnit 方法來指出要保留的變更。

需求

標頭:Synchronization.idl

請參閱

概念

Sync Framework 核心元件