IRecordInfo::P utField 方法 (oaidl.h)

将变体放入字段中。

语法

HRESULT PutField(
  [in]      ULONG     wFlags,
  [in, out] PVOID     pvData,
  [in]      LPCOLESTR szFieldName,
  [in]      VARIANT   *pvarField
);

参数

[in] wFlags

wFlags 参数的唯一合法值是INVOKE_PROPERTYPUT或INVOKE_PROPERTYPUTREF。

如果传入INVOKE_PROPERTYPUTREF, 则 PutField 仅使用常规强制规则将传递给字段的变量的值赋值。

如果传入INVOKE_PROPERTYPUT,则应用特定规则。 如果字段声明为派生自 IDispatch 的类,并且字段的值为 NULL,则将返回错误。 如果字段的值不为 NULL,则变量将传递给字段引用的对象支持的默认属性。 如果字段未声明为派生自 IDispatch 的类,则将返回错误。 如果字段声明为 VT_Dispatch 类型的变体,则将对象的默认值分配给字段。 否则,变量的值将分配给字段。

[in, out] pvData

指向记录实例的指针。

[in] szFieldName

记录的字段的名称。

[in] pvarField

指向变量的指针。

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
成功。
E_INVALIDARG
一个或多个参数无效。

要求

要求
目标平台 Windows
标头 oaidl.h

另请参阅

IRecordInfo