swenum.h) (BUS_INTERFACE_SWENUM 结构
BUS_INTERFACE_SWENUM 结构描述需求负载总线枚举器对象的接口。
语法
typedef struct _BUS_INTERFACE_SWENUM {
INTERFACE Interface;
PFNREFERENCEDEVICEOBJECT ReferenceDeviceObject;
PFNDEREFERENCEDEVICEOBJECT DereferenceDeviceObject;
PFNQUERYREFERENCESTRING QueryReferenceString;
} BUS_INTERFACE_SWENUM, *PBUS_INTERFACE_SWENUM;
成员
Interface
指定导出的 接口。
ReferenceDeviceObject
指向驱动程序提供的 KsReferenceSoftwareBusObject 例程的指针。
DereferenceDeviceObject
指向驱动程序提供的 KsDereferenceSoftwareBusObject 例程的指针。
QueryReferenceString
指向驱动程序提供的 KsQuerySoftwareBusInterface 例程的指针。
注解
驱动程序通过创建并发送指定IRP_MN_QUERY_INTERFACE次要函数代码的IRP_MJ_PNP请求来获取 BUS_INTERFACE_SWENUM 接口。 为此,驱动程序应:
- 从分页内存池分配和零填充BUS_INTERFACE_SWENUM结构。
- 为查询接口请求创建 IRP,并获取新 IRP 的下一个堆栈位置。
- 在新堆栈位置中,提供指向 Parameters.QueryInterface.Interface 成员中新BUS_INTERFACE_SWENUM结构的指针。
- 设置完成例程,并将请求发送到驱动程序堆栈。
- 如果请求成功,系统将填充 Parameters.QueryInterface.Interface 指向的BUS_INTERFACE_SWENUM结构。
要求
要求 | 值 |
---|---|
Header | swenum.h (包括 Swenum.h) |