取得表示特定複寫之中繼資料的 IReplicaMetadata 物件。
HRESULT GetReplicaMetadata(
BYTE * pbReplicaId,
ID_PARAMETERS * pIdParameters,
IReplicaMetadata ** ppReplicaMetadata);
參數
參數 |
描述 |
pbReplicaId |
[in] 要擷取其複寫中繼資料的複寫識別碼。 |
pIdParameters |
[in] 提供者的識別碼格式結構描述。 |
ppReplicaMetadata |
[out] 傳回此複寫的中繼資料。 |
傳回值
S_OK。
E_POINTER。
E_OUTOFMEMORY。
如果中繼資料存放區尚未開啟,則為 E_UNEXPECTED。
如果沒有所指定複寫識別碼的中繼資料,則為 SYNC_E_METADATA_REPLICA_NOT_FOUND。
如果識別碼格式結構描述與此複寫中繼資料初始化時指定的識別碼格式結構描述不符,則為 SYNC_E_IDFORMATMISMATCH。
如果此複寫中繼資料物件的執行個體已在使用中,則為 SYNC_E_METADATA_REPLICA_IN_USE。
備註
為了避免應用程式對中繼資料存放區進行同時的衝突更新,不允許特定複寫識別碼有多個待處理的 IReplicaMetadata 執行個體。應用程式可以從多個執行緒存取相同的 IReplicaMetadata 物件,但是不能有多個處理序同時存取相同的複寫中繼資料。如果特定複寫識別碼的待處理 IReplicaMetadata 執行個體已經存在,這個方法就會傳回 SYNC_E_METADATA_REPLICA_IN_USE。