NDIS_PROTOCOL_RESTART_PARAMETERS结构(ndis.h)
当 NDIS 调用 ProtocolNetPnPEvent 函数来指示 NetEventRestart 事件时,NDIS_PROTOCOL_RESTART_PARAMETERS结构定义协议驱动程序的重启参数。
语法
typedef struct _NDIS_PROTOCOL_RESTART_PARAMETERS {
NDIS_OBJECT_HEADER Header;
PUCHAR FilterModuleNameBuffer;
ULONG FilterModuleNameBufferLength;
PNDIS_RESTART_ATTRIBUTES RestartAttributes;
NET_IFINDEX BoundIfIndex;
NET_LUID BoundIfNetluid;
ULONG Flags;
} NDIS_PROTOCOL_RESTART_PARAMETERS, *PNDIS_PROTOCOL_RESTART_PARAMETERS;
成员
Header
NDIS_PROTOCOL_RESTART_PARAMETERS结构的 NDIS_OBJECT_HEADER 结构。 NDIS 将 类型 成员设置为 标头 指定为NDIS_OBJECT_TYPE_PROTOCOL_RESTART_PARAMETERS、修订 成员NDIS_PROTOCOL_RESTART_PARAMETERS_REVISION_1以及要NDIS_SIZEOF_PROTOCOL_RESTART_PARAMETERS_REVISION_1的 大小 成员。
FilterModuleNameBuffer
基础筛选器模块的名称列表。 对于每个名称,缓冲区包含一个 USHORT 值,后跟宽字符串。 使用缓冲区中的第一个 USHORT 值来确定第一个字符串的长度。 使用第一个字符串的长度来确定下一个字符串的开头。 以这种方式继续,直到从缓冲区检索到的字节数等于 FilterModuleNameBufferLength 成员中指定的字节数。
FilterModuleNameBufferLength
FilterModuleNameBuffer 成员中的缓冲区的长度(以字节为单位)。
RestartAttributes
指向 NDIS_RESTART_ATTRIBUTES 结构列表中的第一个条目的指针。 使用NDIS_RESTART_ATTRIBUTES结构的 下一个 成员获取列表中的下一个结构。
BoundIfIndex
在微型端口适配器上堆叠的最高级别的接口的 NDIS 网络接口索引。 也就是说,如果存在通过微型端口适配器安装的虚拟微型端口或筛选器模块,则此成员是最高级别虚拟微型端口或筛选器模块的 IfIndex。
BoundIfNetluid
NDIS NET_LUID 值(也是网络接口名称(RFC 2863 中的 ifName)是堆叠在微型端口适配器上的最高级别接口。 也就是说,如果存在通过微型端口适配器安装的虚拟微型端口或筛选器模块,则此成员是最高级别虚拟微型端口或筛选器模块的NET_LUID值。
Flags
保留以供将来使用。
言论
NDIS 在调用 ProtocolNetPnPEvent 函数以指示 NetEventRestart 事件时,会将NDIS_PROTOCOL_RESTART_PARAMETERS结构传递给协议驱动程序。
FilterModuleNameBuffer 成员的缓冲区中指定的每个名称都不能保证为 NULL 终止。 每个字符串开头的 USHORT 值包含字符串的长度(以字节为单位)。 协议驱动程序应在访问缓冲区之前检查 FilterModuleNameBufferLength 成员的值。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | NDIS 6.0 及更高版本中受支持。 |
标头 | ndis.h (包括 Ndis.h) |