ISyncMetadataStoreSerializer::GetSerializedReplicaId
Gibt die Replikat-ID für das Replikat zurück, dessen Metadaten in den angegebenen Zielstream serialisiert wurden.
HRESULT GetSerializedReplicaId(
IStream * pStream,
BYTE * pbReplicaId,
DWORD * pcbReplicaId,
ID_PARAMETERS * pIdParameters);
Parameter
- pStream
[in] Der Stream, der die serialisierten Metadaten für ein bestimmtes Replikat enthält.
- pbReplicaId
[in, out, unique, size_is(*pcbReplicaId)] Gibt die ID des Replikats zurück, das diesen Metadaten zugeordnet ist.
- pcbReplicaId
[in, out] Gibt die Anzahl der Bytes in pbReplicaId an. Gibt die erforderliche Anzahl von Bytes für pbReplicaId an, wenn pbReplicaId zu klein ist, oder gibt die Anzahl der in pbReplicaId geschriebenen Bytes an, wenn Daten geschrieben werden.
- pIdParameters
[out] Eine ID_PARAMETERS-Struktur, die Formateinstellungen wie das Replikat-ID-Format für den Anbieter angibt, dessen Metadaten serialisiert werden.
Rückgabewert
S_OK.
E_OUTOFMEMORY.
E_POINTER.
SYNC_E_INVALIDOPERATION, wenn die Methode ohne geöffneten Metadatenspeicher aufgerufen wird.
SYNC_E_METADATA_STORE_DESERIALIZATION_ERROR, wenn während der Deserialisierung Dateiformatfehler auftreten.
HRESULT_FROM_WIN32(ERROR_MORE_DATA), wenn pbReplicaId zu klein ist. In dieser Situation gibt pcbReplicaId die erforderliche Anzahl von Bytes zurück.
Hinweise
Der Metadatenspeicher muss geöffnet werden, bevor diese Methode aufgerufen wird. Öffnen Sie einen Speicher, indem Sie ISqlSyncMetadataStore::OpenStore oder ISqlSyncMetadataStore::CreateStore aufrufen. Der Aufruf dieser Methode ohne vorheriges Öffnen des Speichers führt zu einem Fehlerrückgabewert.