Compartir a través de


IReplicaKeyMap::Serialize

Serializa los datos del mapa de claves de réplica en una matriz de bytes.

Sintaxis

HRESULT Serialize( 
  BYTE *pbReplicaKeyMap,
  DWORD *pcbReplicaKeyMap);

Parámetros

  • pbReplicaKeyMap
    [in, out, unique, size_is(*pcbReplicaKeyMap)] Matriz de bytes que recibe los datos serializados.

  • pcbReplicaKeyMap
    [in, out] Especifica el número de bytes de pbReplicaKeyMap. Devuelve el número de bytes necesarios para serializar los datos de mapa de claves de réplica si pbReplicaKeyMap es demasiado pequeño, o devuelve el número de bytes escritos.

Valor devuelto

  • S_OK.

  • E_INVALIDARG si una clave de réplica o un identificador de réplica almacenado en el mapa no es válido.

  • E_POINTER.

  • E_OUTOFMEMORY.

  • HRESULT_FROM_WIN32(ERROR_MORE_DATA) si pbReplicaKeyMap es demasiado pequeño. En este caso, el número necesario de bytes se devuelve en pcbReplicaKeyMap.

Formato de serialización

El mapa de claves de réplica serializado que contiene pbReplicaKeyMap se almacena en un formato compacto y en orden de bytes "big-endian".

El mapa de claves de réplica serializado contiene los elementos siguientes y en el orden que se indica:

Tipo de datos

Longitud en bytes

Descripción

ULONG

4

Firma del mapa de claves de réplica. Este valor es siempre 5.

BOOL

1

Indica si los identificadores de réplica incluidos en el mapa de claves de réplica son de longitud fija o de longitud variable. Este valor es 0 si los identificadores son de longitud fija ó 1 si son de longitud variable.

USHORT

2

Longitud, en bytes, de los identificadores de réplica en el caso de los identificadores de longitud fija o la longitud máxima del identificador en el caso de los identificadores de longitud variable.

ULONG

4

Número de entradas en el mapa de claves de réplica.

La sección del mapa de claves de réplica contiene una lista de entradas del mapa de claves de réplica, en la cual el número de entradas es igual al valor del ULONG anterior.

Si los identificadores de réplica son de longitud fija:

Tipo de datos

Longitud en bytes

Descripción

Secuencia de bytes

Longitud especificada en el formato del identificador de réplica.

Identificador de réplica de longitud fija.

O bien, si los identificadores de réplica son de longitud variable:

Tipo de datos

Longitud en bytes

Descripción

USHORT

2

Longitud, en bytes, del identificador de longitud variable. Esta longitud incluye los dos bytes del elemento USHORT que contiene la longitud, además de los bytes que contienen el identificador real.

Secuencia de bytes

Longitud especificada en el elemento USHORT anterior.

Identificador de réplica de longitud variable.

Vea también

Otros recursos

Interfaz IReplicaKeyMap