Поделиться через


Метод IRecordInfo::GetFieldNoCopy (oaidl.h)

Возвращает указатель на значение заданного имени поля без копирования значения и выделения ресурсов.

Синтаксис

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

Параметры

[in] pvData

Экземпляр записи.

[in] szFieldName

Имя поля.

[out] pvarField

Variant, который будет содержать определяемый пользователем тип после возврата.

[out] ppvDataCArray

Получает значение поля при возврате.

Возвращаемое значение

Этот метод может возвращать одно из этих значений.

Код возврата Описание
S_OK
Успешно.
E_INVALIDARG
Один или несколько аргументов недопустимы.

Комментарии

После возврата параметр VARIANT, который вы передаете, содержит прямой указатель на поле записи ppvDataCArray. При изменении variant изменится базовое поле записи.

Вызывающий объект выделяет память VARIANT, но не владеет памятью, поэтому не может освободить pvarField. Этот метод вызывает VariantClear для pvarField перед заполнением запрошенного поля.

Требования

Требование Значение
Целевая платформа Windows
Header oaidl.h

См. также раздел

IRecordInfo

VariantClear