Share via


Método IRecordInfo::GetFieldNoCopy (oaidl.h)

Devuelve un puntero al valor de un nombre de campo determinado sin copiar el valor y asignar recursos.

Sintaxis

HRESULT GetFieldNoCopy(
  [in]  PVOID     pvData,
  [in]  LPCOLESTR szFieldName,
  [out] VARIANT   *pvarField,
  [out] PVOID     *ppvDataCArray
);

Parámetros

[in] pvData

Instancia de un registro.

[in] szFieldName

Nombre del campo.

[out] pvarField

Variant que contendrá el UDT tras la devolución.

[out] ppvDataCArray

Recibe el valor del campo al devolverlo.

Valor devuelto

Este método puede devolver uno de estos valores.

Código devuelto Descripción
S_OK
Correcto.
E_INVALIDARG
Uno o varios de los argumentos no son válidos.

Comentarios

Tras la devolución, la VARIANT que se pasa contiene un puntero directo al campo del registro, ppvDataCArray. Si modifica variant, el campo de registro subyacente cambiará.

El autor de la llamada asigna memoria de VARIANT, pero no posee la memoria, por lo que no puede liberar pvarField. Este método llama a VariantClear para pvarField antes de rellenar el campo solicitado.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado oaidl.h

Consulte también

IRecordInfo

VariantClear