Поделиться через


IProviderSyncServices::DeserializeSyncKnowledge

Создает объект ISyncKnowledge и инициализирует его, используя сериализованные данные.

HRESULT DeserializeSyncKnowledge( 
  const BYTE *pbKnowledge,
  DWORD cbKnowledge,
  IReplicaKeyMap *pReplicaKeyMap,
  ISyncKnowledge **ppKnowledge);

Параметры

  • pbKnowledge
    [in, size_is(cbKnowledge)] Сериализованные данные набора знаний.
  • cbKnowledge
    [in] Размер pbKnowledge в байтах.
  • pReplicaKeyMap
    [in, unique] Карта ключей реплики, которая используется для инициализации вновь созданного объекта набора знаний. Если это значение равно NULL, то параметр pbKnowledge должен содержать сериализованную карту ключей реплики. Если это значение не равно NULL, то параметр pbKnowledge не должен содержать сериализованную карту ключей реплики.
  • ppKnowledge
    [out] Возвращает вновь созданный объект набора знаний.

Возвращаемое значение

  • S_OK

  • E_OUTOFMEMORY

  • E_POINTER

  • SYNC_E_INVALID_OPERATION, если этот объект не инициализирован.

  • SYNC_E_DESERIALIZATION, если сериализованные данные являются недопустимыми.

  • SYNC_E_ID_FORMAT_MISMATCH, если схема форматов идентификаторов, содержащаяся в pbKnowledge, отличается от схемы форматов идентификаторов, которая используется для инициализации объекта.

Замечания

Для десериализации объекта набора знаний требуется подходящий интерфейс Интерфейс IReplicaKeyMap. Если объект IReplicaKeyMap сериализован вместе с данными набора знаний, он десериализуется вместе с данными набора знаний, и для параметра pReplicaKeyMap должно быть указано значение NULL. Если объект IReplicaKeyMap не сериализован вместе с данными набора знаний, он должен быть создан каким-либо другим способом и указан в качестве значения параметра pReplicaKeyMap.

См. также

Справочник

Интерфейс IProviderSyncServices
ISyncKnowledge::Serialize
ISyncKnowledge2::SerializeWithOptions