IKsControl::KsProperty 方法 (ks.h)

IKsControl::KsProperty 方法设置属性或检索属性信息,以及属性集上提供的任何其他定义的支持作。

语法

NTSTATUS KsProperty(
  [in]      PKSPROPERTY Property,
  [in]      ULONG       PropertyLength,
  [in, out] PVOID       PropertyData,
  [in]      ULONG       DataLength,
  [out]     ULONG       *BytesReturned
);

参数

[in] Property

指向描述属性的结构和属性请求的请求类型的指针。 此结构必须是 KSPROPERTY 或包含 KSPROPERTY 结构作为其第一个成员的结构。 此成员可指向的结构的一个示例是 KSPROPERTY_VIDEOPROCAMP_S 结构。

[in] PropertyLength

指定 属性处缓冲区的大小(以字节为单位)。

[in, out] PropertyData

指向包含用于接收所有其他作数据的KSPROPERTY_TYPE_SET、KSPROPERTY_TYPE_UNSERIALIZESET或KSPROPERTY_TYPE_UNSERIALIZERAW作或缓冲区空间的缓冲区的指针。

[in] DataLength

指定 PropertyData处缓冲区的大小(以字节为单位)。

[out] BytesReturned

指向一个变量的指针,该变量接收 KsProperty 的数据的大小(以字节为单位) 存储在 PropertyData的缓冲区中。 如果未存储任何数据,则大小为零。

返回值

IKsControl::KsProperty 方法返回与 IOCTL 发送属性时返回的值相同。

言论

若要确定特定属性请求所需的缓冲区大小,可以调用此方法,并将 PropertyData 设置为 NULLDataLength 等于零。 该方法返回 HRESULT_FROM_WIN32(ERROR_MORE_DATA),BytesReturned 包含所需缓冲区的大小。

要求

要求 价值
目标平台 DesktopMobile
标头 ks.h (包括 Ks.h)

另请参阅

KSPROPERTY

KSPROPERTY_ITEM

KSPROPERTY_SET