IKsControl::KsMethod 方法 (ks.h)

IKsControl::KsMethod 方法向 KS 对象发送方法,以及方法集上可用的任何其他已定义支持操作。

语法

NTSTATUS KsMethod(
  [in]      PKSMETHOD Method,
  [in]      ULONG     MethodLength,
  [in, out] PVOID     MethodData,
  [in]      ULONG     DataLength,
  [out]     ULONG     *BytesReturned
);

参数

[in] Method

指向 KSMETHOD 结构的指针,该结构描述方法和方法请求的请求类型。

[in] MethodLength

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

[in, out] MethodData

指向缓冲区的指针,该缓冲区包含KSMETHOD_TYPE_SEND操作的数据和缓冲区空间,或接收所有其他操作的数据的缓冲区空间。

[in] DataLength

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

[out] BytesReturned

指向一个变量的指针,该变量接收 KsMethod 存储在 MethodData 缓冲区中的数据的大小(以字节为单位)。

返回值

IKsControl::KsMethod 方法返回的值与 IOCTL 发送该方法时将返回的值相同。

注解

若要确定特定方法请求所需的缓冲区大小,可以在 MethodData 设置为 NULL 且 DataLength 等于零的情况下调用此方法。 方法返回HRESULT_FROM_WIN32 (ERROR_MORE_DATA,BytesReturned 包含所需缓冲区的大小。

要求

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

另请参阅

KSMETHOD

KSMETHOD_ITEM

KSMETHOD_SET