NdisIMCopySendCompletePerPacketInfo 函数 (ndis.h)

注意 NDIS 5. x 已弃用,由 NDIS 6 取代。 x。 有关新的 NDIS 驱动程序开发,请参阅 从 Windows Vista 开始的网络驱动程序。 有关移植 NDIS 5 的信息。 NDIS 6 的 x 驱动程序。 x,请参阅 将 NDIS 5.x 驱动程序移植到 NDIS 6.0

NdisIMCopySendCompletePerPacketInfo 将低级微型端口驱动程序返回的数据包中的每数据包信息复制到要返回到上层驱动程序的新数据包中。

语法

void NdisIMCopySendCompletePerPacketInfo(
  [out] OUT PNDIS_PACKET DstPacket,
  [in]  IN PNDIS_PACKET  SrcPacket
);

参数

[out] DstPacket

指向要在其中复制每个数据包信息的目标数据包描述符的指针。

[in] SrcPacket

指向从中复制每个数据包信息的源数据包描述符的指针。

返回值

备注

当中间驱动程序处理来自较低微型端口驱动程序的发送请求完成时,该中间驱动程序会调用 NdisIMCopySendCompletePerPacketInfo 来复制每个数据包的信息。 中间驱动程序将每个数据包的信息从低级微型端口驱动程序返回的数据包复制到中间驱动程序返回到上层驱动程序的新数据包中。 中间驱动程序对通过堆栈返回的每个数据包调用 NdisIMCopySendCompletePerPacketInfo ,除非中间驱动程序必须修改数据包的每数据包信息。

每个数据包的信息包含在 NDIS_PACKET_EXTENSION 结构中,包括校验和信息、Internet 协议安全信息和 802.1p 优先级信息。

如果中间驱动程序必须修改数据包的每个数据包信息,该中间驱动程序应使用 NDIS_PER_PACKET_INFO_FROM_PACKET 宏来访问该信息。 驱动程序可以针对需要访问的每数据包信息类型调用此宏一次。

驱动程序还可以使用 NDIS_PACKET_EXTENSION_FROM_PACKET 宏,该宏返回指向 NDIS_PACKET_EXTENSION 结构的指针。 如果驱动程序需要访问与数据包描述符关联的多种类型的每数据包信息,则可以调用此宏。 获取指向NDIS_PACKET_EXTENSION结构的指针后,驱动程序可以使用适当的数组索引来获取指向特定类型的每数据包信息的指针。

若要将一系列数据从一个数据包复制到另一个数据包,请使用 NdisCopyFromPacketToPacket 函数。

  • 目标平台: 通用
  • 版本:Windows Vista 中的 NDIS 6.0 驱动程序不支持。 支持 Windows Vista 和 Windows XP 中的 NDIS 5.1 驱动程序。

要求

要求
Header ndis.h (包括 Ndis.h)
Library Ndis.lib
IRQL 任何级别

另请参阅