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

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

[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