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)

另请参阅

NDIS_OBJECT_HEADER

NDIS_RESTART_ATTRIBUTES

ProtocolNetPnPEvent