Partager via


IReplicaKeyMap::Serialize

Sérialise les données de mappage de clés de réplica en un tableau d'octets.

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

Paramètres

  • pbReplicaKeyMap
    [in, out, unique, size_is(*pcbReplicaKeyMap)] Tableau d'octets qui reçoit les données sérialisées.
  • pcbReplicaKeyMap
    [in, out] Spécifie le nombre d'octets contenus dans pbReplicaKeyMap. Retourne le nombre d'octets requis pour sérialiser les données de mappage de clés de réplica lorsque pbReplicaKeyMap est trop petit, ou retourne le nombre d'octets écrits.

Valeur de retour

  • S_OK.

  • E_INVALIDARG lorsqu'un ID de réplica ou une clé de réplica stocké dans le mappage n'est pas valide.

  • E_POINTER.

  • E_OUTOFMEMORY.

  • HRESULT_FROM_WIN32(ERROR_MORE_DATA) lorsque pbReplicaKeyMap est trop petit. Dans ce cas, le nombre requis d'octets est retourné dans pcbReplicaKeyMap.

Format de sérialisation

Le mappage de clés de réplica sérialisé contenu dans pbReplicaKeyMap est stocké dans un format compact, dans l'ordre d'octet avec primauté des octets de poids fort (big-endian).

Le mappage de clés de réplica sérialisé contient les éléments suivants, dans l'ordre suivant :

Type de données Longueur en octets Description

ULONG

4

Signature de mappage de clés de réplica. Cette valeur est toujours 5.

BOOL

1

Indique si les ID de réplica contenus dans le mappage de clés de réplica sont de longueur fixe ou de longueur variable. Cette valeur est 0 si les ID sont de longueur fixe ou 1 si les ID sont de longueur variable.

USHORT

2

Longueur, en octets, des ID de réplica pour les ID de longueur fixe, ou la longueur maximale de l'ID pour les ID de longueur variable.

ULONG

4

Nombre d'entrées dans le mappage de clés de réplica.

La section de mappage de clés de réplica contient une liste d'entrées de mappage de clés de réplica, avec le nombre d'entrées égal à la valeur contenue dans l'ULONG précédent.

Lorsque les ID de réplica sont de longueur fixe :

Type de données Longueur en octets Description

Séquence d'octets

Longueur spécifiée dans le format d'ID de réplica.

ID de réplica de longueur fixe.

Ou, lorsque les ID de réplica sont de longueur variable :

Type de données Longueur en octets Description

USHORT

2

Longueur, en octets, de l'ID de longueur variable. Cette longueur inclut les deux octets pour l'USHORT qui contient la longueur, plus les octets qui contiennent l'ID réel.

Séquence d'octets

Longueur spécifiée dans l'USHORT précédent.

ID de réplica de longueur variable.

Voir aussi

Référence

Interface IReplicaKeyMap