ISyncMetadataStore::GetReplicaMetadata
获取表示特定副本的元数据的 IReplicaMetadata 对象。
HRESULT GetReplicaMetadata(
BYTE * pbReplicaId,
ID_PARAMETERS * idParameters,
IReplicaMetadata ** ppReplicaMetadata);
参数
- pbReplicaId
[in] 将检索其副本元数据的副本 ID。
- idParameters
[in] 提供程序的 ID 格式架构。
- ppReplicaMetadata
[out] 返回副本的元数据。
返回值
S_OK
E_POINTER
E_OUTOFMEMORY
如果尚未打开元数据存储区,则返回值为 E_UNEXPECTED。
如果指定副本 ID 的元数据不存在,则返回值为 SYNC_E_METADATA_REPLICA_NOT_FOUND。
如果 ID 格式架构与初始化副本元数据时指定的 ID 格式架构不一致,则返回值为 SYNC_E_IDFORMATMISMATCH。
如果此副本元数据对象的一个实例已处于活动状态,则返回值为 SYNC_E_METADATA_REPLICA_IN_USE。
备注
为了阻止应用程序对元数据存储区进行并发冲突更新,不允许一个特定副本 ID 有多个未完成的 IReplicaMetadata 实例。应用程序可以从多个线程访问同一个 IReplicaMetadata 对象,但多个进程不能同时访问同一副本元数据。如果特定副本 ID 已经存在一个未完成的 IReplicaMetadata 实例,则此方法返回 SYNC_E_METADATA_REPLICA_IN_USE。