共用方式為


ISyncDataConverter::ConvertDataRetrieverToProviderFormat

將資料擷取器從外部格式轉換為相關聯之提供者的資料擷取器格式。只有當同步處理工作階段中的一個或兩個提供者使用 ISynchronousDataRetrieverIAsynchronousDataRetriever 以外的介面來擷取資料時,才需要使用這個方法。

HRESULT ConvertDataRetrieverToProviderFormat(
  IUnknown *pUnkDataRetrieverIn,
  IEnumSyncChanges *pEnumSyncChanges,
  IUnknown **ppUnkDataOut);

參數

  • pUnkDataRetrieverIn
    [in] 要轉換的資料擷取器。
  • ppUnkDataOut
    [out] 已轉換的資料擷取器。

傳回值

  • S_OK。

  • 如果資料擷取器會實作其中一個內建介面,並且只需要進行資料轉換,則為 E_NOTIMPL。

  • 開發人員定義的錯誤值

如果傳回 E_NOTIMPL 以外的錯誤,同步處理工作階段就會結束並傳回錯誤碼。

備註

通常,轉換資料擷取器最有效率的方式就是建立 Proxy,以便實作提供者的資料擷取器介面並且保存外部資料擷取器介面的指標。然後,在同步處理工作階段期間處理變更時,此 Proxy 就可以從外部介面擷取資料。在某些情況下 (例如遠端變更應用程式案例),您必須先擷取所有變更、視需要轉換它們,然後使用所有內部資料來序列化資料擷取器。針對這些情況,請使用 pEnumSyncChanges 來列舉應該要序列化的所有變更。

請參閱

參考

ISyncDataConverter 介面

概念

在提供者之間轉換資料