(wlanihv.h) DOT11EXT_SEND_PACKET 回调函数

重要本机 802.11 无线 LAN 接口在 Windows 10 及更高版本中已弃用。 请改用 WLAN 设备驱动程序接口 (WDI) 。 有关 WDI 的详细信息,请参阅 WLAN 通用 Windows 驱动程序模型
 
IHV 扩展 DLL 调用 Dot11ExtSendPacket 函数,以通过无线 LAN (WLAN) 适配器传输数据包。

语法

DOT11EXT_SEND_PACKET Dot11extSendPacket;

DWORD Dot11extSendPacket(
  [in, optional] HANDLE hDot11SvcHandle,
  [in]           ULONG uPacketLen,
  [in]           LPVOID pvPacket,
  [in, optional] HANDLE hSendCompletion
)
{...}

参数

[in, optional] hDot11SvcHandle

操作系统用于引用 WLAN 适配器的句柄。 此句柄值是通过先前对 Dot11ExtIhvInitAdapter IHV 处理程序函数的调用指定的。

[in] uPacketLen

pvPacket 参数引用的调用方分配的缓冲区的长度(以字节为单位)。

[in] pvPacket

指向调用方分配的缓冲区的指针,该缓冲区包含要传输的数据,如“备注”部分所述。

[in, optional] hSendCompletion

唯一标识发送数据包的句柄值。

当 WLAN 适配器完成发送操作时,操作系统会通过调用 来通知 IHV 扩展 DLL Dot11ExtIhvSendPacketCompletion IHV 处理程序函数。 进行此调用时,操作系统通过 hSendCompletion 参数传递数据包的句柄值。

返回值

如果调用成功,函数将返回ERROR_SUCCESS。 否则,它将返回 Winerror.h 中定义的错误代码。

注解

调用 Dot11ExtSendPacket 函数时,IHV 扩展 DLL 必须遵循这些准则。

  • 通过 Dot11ExtSendPacket 函数的调用发送的数据包将以异步方式完成。 IHV 扩展 DLL 不得释放 pvPacket 参数引用的内存,直到 Dot11ExtIhvSendPacketCompletion 使用与 hSendCompletion 参数相同的句柄值调用 IHV 处理程序函数。
  • IHV 扩展 DLL 必须将 hSendCompletion 参数设置为唯一标识 pvPacket 参数引用的数据包数据的值。
有关 IHV 处理程序函数的详细信息,请参阅 本机 802.11 IHV 处理程序函数

pvPacket 指向的缓冲区应包含以下按网络字节顺序指定的数据包数据:

  • 目标 MAC 地址 (6 字节) ,根据 802.11 MAC 标头管理中讨论的准则设置格式
  • IEEE EtherType (2 个字节)
  • 有效负载
此数据包数据将传递到微型端口驱动程序。

要求

要求
最低受支持的客户端 在 Windows Vista 和更高版本的 Windows 操作系统中可用。
目标平台 桌面
标头 wlanihv.h (包括 Wlanihv.h)

另请参阅

本机 802.11 IHV 处理程序函数

Dot11ExtIhvSendPacketCompletion

Dot11ExtIhvInitAdapter

802.11 MAC 标头管理