Compartir a través de


IItemMetadata::TryGetFieldByteArray

Obtiene el valor de un campo de matriz de bytes.

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

Parámetros

  • pcszFieldName
    [in, string] Nombre del campo.
  • pbValue
    [in, out, unique, size_is(* pcbValue)] Devuelve el valor del campo especificado.
  • pcbValue
    [in, out] Especifica el número de bytes de pbValue. Devuelve el número de bytes necesarios para recuperar el campo especificado si pbValue es demasiado pequeño; en caso contrario, devuelve el número de bytes escritos.

Valor devuelto

  • S_OK

  • S_FALSE si el valor no se ha establecido o se ha establecido en NULL.

  • E_POINTER

  • E_INVALIDARG

  • SYNC_E_METADATA_FIELD_INVALID_NAME si el campo no existe.

  • SYNC_E_METADATA_FIELD_INVALID_TYPE si el campo no es una matriz de bytes.

  • HRESULT_FROM_WIN32(ERROR_MORE_DATA) si pbValue no es suficientemente grande para recibir el valor del campo. En esta situación, pcbValue devuelve el número necesario de bytes.

Notas

Los campos personalizados se deben definir mediante una estructura CUSTOM_FIELD_DEFINITION cuando se inicializan por primera vez los metadatos de réplica.

Si se llamó a IItemMetadata::SetFieldByteArray para establecer el valor del campo, pero el cambio no se ha guardado aún mediante una llamada a IReplicaMetadata::SaveItemMetadata, TryGetFieldByteArray devuelve el valor incluido en el objeto IItemMetadata y no el valor almacenado en el almacén de metadatos.

Vea también

Referencia

Interfaz IItemMetadata