PCMETHOD_ITEM 结构 (portcls.h)
PCMETHOD_ITEM结构描述筛选器、引脚或节点支持的方法。
语法
typedef struct {
const GUID *Set;
ULONG Id;
ULONG Flags;
PCPFNMETHOD_HANDLER Handler;
} PCMETHOD_ITEM, *PPCMETHOD_ITEM;
成员
Set
指定方法集。 此成员是指向唯一标识方法集的 GUID 的指针。
Id
指定方法 ID。 此成员标识方法集中的方法项。 如果方法集包含 n 个项,则有效的方法 ID 是 0 到 n-1 范围内的整数。
Flags
指定方法使用的传递参数和内存访问的类型。 此成员可以设置为下表中一个或多个标志位的按位 OR。
标志位 | 含义 |
---|---|
PCMETHOD_ITEM_FLAG_MODIFY | 方法从参数缓冲区读取和写入参数缓冲区。 |
PCMETHOD_ITEM_FLAG_NONE | 方法不使用参数缓冲区。 |
PCMETHOD_ITEM_FLAG_READ | 方法从参数缓冲区读取 。 |
PCMETHOD_ITEM_FLAG_SOURCE | 方法在尝试内存访问之前探测并锁定内存页。 |
PCMETHOD_ITEM_FLAG_WRITE | 方法写入参数缓冲区。 |
Handler
指向方法处理程序例程的指针。 此成员是 PCPFNMETHOD_HANDLER 类型的函数指针,定义如下:
typedef NTSTATUS (*PCPFNMETHOD_HANDLER)
(
IN PPCMETHOD_REQUEST MethodRequest
);
调用 Handler 例程时,调用方传入单个调用参数,该参数是指向 PCMETHOD_REQUEST 类型的结构的指针。
注解
WDM 音频子系统当前不支持筛选器实例或引脚实例上的方法。 此限制还排除了对节点上方法的支持。
PCAUTOMATION_TABLE 结构包含指向PCMETHOD_ITEM结构数组的指针。
要求
要求 | 值 |
---|---|
Header | portcls.h (包括 Portcls.h) |