次の方法で共有


ISyncDataConverter::ConvertDataRetrieverToProviderFormat

データ取得元を、外部形式から、関連付けられたプロバイダーのデータ取得元の形式に変換します。このメソッドが必要になるのは、同期セッション内のプロバイダーのいずれかまたは両方が ISynchronousDataRetriever または IAsynchronousDataRetriever 以外のインターフェイスを使用してデータを取得する場合のみです。

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

パラメーター

  • pUnkDataRetrieverIn
    [in] 変換するデータ取得元です。
  • pEnumSyncChanges
    [in] 一連の項目変更を表す IEnumSyncChanges オブジェクトです。
  • ppUnkDataOut
    [out] 変換されたデータ取得元です。

戻り値

  • S_OK

  • E_NOTIMPL (データ取得元が組み込みのインターフェイスの 1 つを実装し、データ変換のみが必要な場合)

  • 開発者が定義したエラー値

E_NOTIMPL 以外のエラーが返されると、同期セッションが終了し、エラー コードが返されます。

解説

通常、最も効率的にデータ取得元を変換するには、プロバイダーのデータ取得元インターフェイスを実装して外部のデータ取得元インターフェイスへのポインターを保持するプロキシを作成します。その後、同期セッション中に変更が処理されると、プロキシは外部インターフェイスからデータを取得できます。リモートの変更を伴うアプリケーション シナリオなど、場合によっては、最初にすべての変更を取得し、必要に応じて変換してから、データ取得元とその中のデータすべてをシリアル化する必要があります。このような場合は、pEnumSyncChanges を使用して、シリアル化が必要な変更をすべて列挙します。

参照

リファレンス

ISyncDataConverter インターフェイス

概念

プロバイダー間でのデータの変換