ISyncKnowledge::ConvertVersion method (winsync.h)

Converts a version from another replica into one that is compatible with the replica that owns this knowledge.

Syntax

HRESULT ConvertVersion(
  [in]      ISyncKnowledge     *pKnowledgeIn,
  [in]      const BYTE         *pbCurrentOwnerId,
  [in]      const SYNC_VERSION *pVersionIn,
  [in]      BYTE               *pbNewOwnerId,
  [in, out] DWORD              *pcbIdSize,
  [out]     SYNC_VERSION       *pVersionOut
);

Parameters

[in] pKnowledgeIn

A knowledge that is valid for pbCurrentOwnerId and that contains pVersionIn.

[in] pbCurrentOwnerId

The ID of the replica that owns pVersionIn.

[in] pVersionIn

The version to convert.

[in] pbNewOwnerId

Returns the ID of the replica that owns the converted version.

[in, out] pcbIdSize

Specifies the number of bytes in pbNewOwnerId. Returns the number of bytes required to retrieve the ID when pbNewOwnerId is too small, or returns the number of bytes written.

[out] pVersionOut

Returns the version. This is converted to be valid for the replica that owns this knowledge.

Return value

The possible return codes include, but are not limited to, the values shown in the following table.

Return code Description
S_OK
The method succeeded.
E_INVALIDARG
E_OUTOFMEMORY
HRESULT_FROM_WIN32(ERROR_MORE_DATA)
pbNewOwnerId is too small. In this case, the required number of bytes is returned in pcbIdSize.

Requirements

Requirement Value
Minimum supported client Windows 7 [desktop apps only]
Minimum supported server Windows Server 2008 R2 [desktop apps only]
Target Platform Windows
Header winsync.h

See also

ISyncKnowledge Interface

SYNC_VERSION Structure