ISyncChangeBatchBase::Serialize

将变更批序列化到一个字节数组。

HRESULT Serialize(
  BYTE * pbChangeBatch,
  DWORD * pcbChangeBatch);

参数

  • pbChangeBatch
    [in, out, unique, size_is(*pcbChangeBatch)] 接收变更批数据的字节数组。
  • pcbChangeBatch
    [in, out] 指定 pbChangeBatch 中的字节数。如果 pbChangeBatch 太小,则返回 pbChangeBatch 所需的字节数;否则返回当写入数据时写入到 pbChangeBatch 中的字节数。

返回值

  • S_OK。

  • E_POINTER。

  • E_OUTOFMEMORY。

  • 如果 pbChangeBatch 太小,则返回值为 HRESULT_FROM_WIN32(ERROR_MORE_DATA)。在这种情况下,将在 pcbChangeBatch 中存储必需的字节数。

  • 如果添加到批的最后一个组未结束,则返回值为 SYNC_E_INVALID_OPERATION。

序列化格式

pbChangeBatch 中返回的序列化变更批数据与 ISyncChangeBatchBase2::SerializeWithOptions 在 targetFormatVersion 为 SYNC_SERIALIZATION_VERSION_V1 时返回的数据相同。

请参阅

参考

ISyncChangeBatchBase 接口