OID_PM_CURRENT_CAPABILITIES
作为查询,过分的驱动程序可以使用 OID_PM_CURRENT_CAPABILITIES OID 来查询网络适配器的当前可用电源管理功能。 从 OID 查询请求成功返回后,NDIS_OID_REQUEST 结构的 InformationBuffer 成员包含指向 NDIS_PM_CAPABILITIES 结构的指针。
注解
NDIS 处理微型端口驱动程序的查询。 从 NDIS 6.20 开始,微型端口驱动程序在初始化期间提供电源管理硬件功能。 但是,NDIS 可以从协议驱动程序中隐藏某些功能。 例如,当用户禁用部分或全部电源管理功能时,NDIS 可能会报告不同的功能。
请注意,NDIS 向协议驱动程序报告的当前电源管理功能不一定与微型端口驱动程序向 NDIS 报告的硬件功能相同。
在绑定操作期间,NDIS 将基础网络适配器的电源管理功能报告给 NDIS_BIND_PARAMETERS 结构的 PowerManagementCapabilitiesEx 成员中的过度协议驱动程序。 因此,协议驱动程序不必查询 OID。
NDIS 发出一个 NDIS_STATUS_PM_CAPABILITIES_CHANGE 状态指示,以报告对过度驱动程序可用的电源管理功能的更改。
如果基础网络适配器具有 NDIS 6.1 或更早的微型端口驱动程序,则 NDIS 会将基础网络适配器的电源管理功能转换为 NDIS_PM_CAPABILITIES 结构。
NDIS 返回请求的以下状态代码之一:
NDIS_STATUS_SUCCESS
请求已成功完成。 InformationBuffer 指向NDIS_PM_CAPABILITIES结构。
NDIS_STATUS_PENDING
请求正在等待完成。 请求完成后,NDIS 会将最终状态代码和结果传递给调用方 OID 请求完成处理程序。
NDIS_STATUS_BUFFER_TOO_SHORT
信息缓冲区太短。 NDIS 设置 数据。QUERY_INFORMATION。NDIS_OID_REQUEST结构中的 BytesNeeded 成员达到所需的最小缓冲区大小。
NDIS_STATUS_FAILURE
请求因上述原因以外的原因而失败。
要求
版本 |
在 NDIS 6.20 及更高版本中受支持。 对于微型端口驱动程序,未请求。 (请参见“备注”部分。) |
标头 |
Ntddndis.h (包括 Ndis.h) |