DOT11EXT_SEND_PACKET回调函数 (wlanihv.h)

重要 Windows 10 及更高版本中弃用了 Native 802.11 无线 LAN 接口。 请改用 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 通知 IHV 扩展 DLL Dot11ExtIhvSendPacketCompletion IHV 处理程序函数。 进行此调用时,作系统通过 hSendCompletion 参数传递数据包的句柄值。

返回值

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

言论

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

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

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

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

要求

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

另请参阅

本机 802.11 IHV 处理程序函数

Dot11ExtIhvSendPacketCompletion

Dot11ExtIhvInitAdapter

802.11 MAC 标头管理