Share via


IReplicaMetadata::ReportLiveItemByGlobalId

指定した項目がアクティブであり、削除済みであると見なすべきでないことを報告します。

HRESULT ReportLiveItemByGlobalId(
  const BYTE * pbGlobalId);

パラメーター

  • pbGlobalId
    [in] アクティブであると報告する項目の ID。

戻り値

  • S_OK

  • E_POINTER

  • E_OUTOFMEMORY

  • 指定した項目がメタデータ ストアで見つからない場合は SYNC_E_METADATA_ITEM_NOT_FOUND。

解説

このメソッドは削除検出サービスの一部です。変更された項目を取得するために IReplicaMetadata::SaveItemMetadata が呼び出されたときや、変更はされていなくてもアクティブである項目を取得するために IReplicaMetadata::ReportLiveItemByIndexedFields または IReplicaMetadata::ReportLiveItemByGlobalId が呼び出されたときに、項目はアクティブであるとメタデータ ストア内でマーク付けされます。プロバイダーは、IReplicaMetadata::GetUnreportedItems または IReplicaMetadata::GetUnreportedItemsByIndexedFields を呼び出して、メタデータ ストアに存在していてアクティブと報告されない項目を取得することができます。次に、プロバイダーは、メタデータ ストア内でこれらの項目に削除済みのマークを付けることができます。

ISqlSyncMetadataStore を使用した実装の場合は、IReplicaMetadata::SaveItemMetadata が更新済み項目をアクティブな項目として暗黙的にマーク付けします。そのため、このメソッドを呼び出す必要があるのは、変更されなかった項目に対してのみです。

参照

リファレンス

IReplicaMetadata インターフェイス