Partager via


IItemMetadata::TryGetFieldByteArray

Obtient la valeur d'un champ de tableau d'octets.

HRESULT TryGetFieldByteArray(
  LPCWSTR pcszFieldName,
  BYTE * pbValue,
  ULONG * pcbValue);

Paramètres

  • pcszFieldName
    [in, string] Nom du champ.
  • pbValue
    [in, out, unique, size_is(* pcbValue)] Retourne la valeur du champ spécifié.
  • pcbValue
    [in, out] Spécifie le nombre d'octets contenus dans pbValue. Retourne le nombre d'octets requis pour récupérer la valeur du champ spécifié lorsque pbValue est trop petit ; sinon, retourne le nombre d'octets écrits.

Valeur de retour

  • S_OK.

  • S_FALSE si la valeur n'a pas été définie ou si la valeur NULL a été affectée.

  • E_POINTER.

  • E_INVALIDARG.

  • SYNC_E_METADATA_FIELD_INVALID_NAME si le champ n'existe pas.

  • SYNC_E_METADATA_FIELD_INVALID_TYPE si le champ n'est pas un tableau d'octets.

  • HRESULT_FROM_WIN32(ERROR_MORE_DATA) lorsque pbValue n'est pas assez grand pour recevoir la valeur du champ. Dans ce cas, pcbValue retourne le nombre d'octets requis.

Notes

Les champs personnalisés doivent être définis à l'aide d'une structure CUSTOM_FIELD_DEFINITION lorsque les métadonnées de réplica sont initialisées pour la première fois.

Si IItemMetadata::SetFieldByteArray a été appelée pour définir la valeur de champ, mais que la modification n'a pas encore été enregistrée par un appel à IReplicaMetadata::SaveItemMetadata, TryGetFieldByteArray retourne la valeur contenue dans l'objet IItemMetadata et non la valeur stockée dans le magasin des métadonnées.

Voir aussi

Référence

Interface IItemMetadata