在中间驱动程序中处理 PnP 事件和电源管理事件

中间驱动程序必须能够处理即插即用 (PnP) 事件和电源管理事件。 尤其是在下列情况下:

  • 中间驱动程序必须在传递给 NdisMSetMiniportAttributes的 NDIS_MINIPORT_ADAPTER_REGISTRATION_ATTRIBUTES 结构的 AttributeFlags 成员中设置NDIS_MINIPORT_ATTRIBUTES_NO_HALT_ON_SUSPEND标志。 有关详细信息,请参阅 初始化为微型端口

  • 中间驱动程序的虚拟微型端口必须处理OID_PNP_Xxx 请求。

  • 中间驱动程序的协议部分应将适当的OID_PNP_Xxx 请求传播到基础微型端口驱动程序。 中间驱动程序的虚拟微型端口应将基础微型端口驱动程序对这些请求的响应传递回发起请求的协议驱动程序。 中间驱动程序不必传递设计不需要的请求。 例如,如果虚拟微型端口与基础微型端口适配器之间不存在一对一关系,如负载均衡故障转移 (LBFO) 应用程序。

  • 中间驱动程序的协议部分必须提供 ProtocolNetPnPEvent 函数。

不会按任何特定顺序调用中间驱动程序协议和微型端口事件处理程序。 应相应地实现中间驱动程序的事件处理程序。

本节包括下列主题:

初始化中间驱动程序以处理 PnP 和电源管理事件

处理 OID_PNP_Xxx 查询和设置请求

在中间驱动程序中实现 ProtocolNetPnPEvent 处理程序

处理设置电源请求