DOT11EXT_POST_ASSOCIATE_COMPLETION回调函数 (wlanihv.h)

重要 Windows 10 及更高版本中弃用了 Native 802.11 无线 LAN 接口。 请改用 WLAN 设备驱动程序接口(WDI)。 有关 WDI 的详细信息,请参阅 WLAN 通用 Windows 驱动程序模型

IHV 扩展 DLL 调用 Dot11ExtPostAssociateCompletion 函数以异步方式完成通过调用调用发起的关联后作 Dot11ExtIhvPerformPostAssociate IHV 处理程序函数。

语法

DOT11EXT_POST_ASSOCIATE_COMPLETION Dot11extPostAssociateCompletion;

DWORD Dot11extPostAssociateCompletion(
  [in, optional] HANDLE hDot11SvcHandle,
  [in, optional] HANDLE hSecuritySessionID,
  [in, optional] PDOT11_MAC_ADDRESS pPeer,
  [in]           DWORD dwReasonCode,
  [in]           DWORD dwWin32Error
)
{...}

参数

[in, optional] hDot11SvcHandle

作系统用于引用无线 LAN (WLAN) 适配器的句柄。 此句柄值是通过上一次调用 Dot11ExtIhvInitAdapter IHV 处理程序函数指定的。

[in, optional] hSecuritySessionID

通过对前一次调用返回的安全会话标识符 (ID) 的句柄 Dot11ExtIhvPerformPostAssociate IHV 处理程序函数。

[in, optional] pPeer

IHV 扩展 DLL 执行安全作的接入点(AP)的媒体访问控制(MAC)地址。 此参数的格式设置为 DOT11_MAC_ADDRESS 结构。

注释 对于 Windows Vista,IHV 扩展 DLL 仅支持基础结构基本服务集 (BSS) 网络。

[in] dwReasonCode

一个值,该值为关联后作的完成状态提供附加信息。 IHV 扩展 DLL 必须将 dwReasonCode 设置为在 L2cmn.h 中定义的L2_REASON_CODE_xxxx值。

IHV 扩展 DLL 通过 dwWin32Error 参数返回关联后作的常规完成状态。 通常,IHV 扩展 DLL 将 dwReasonCode 设置为从 L2_REASON_CODE_IHV_BASE 到 (L2_REASON_CODE_IHV_BASE+ L2_REASON_CODE_GROUP_SIZE-1) 范围内的值。

[in] dwWin32Error

由 Winerror.h 中的错误代码定义的关联后作的完成状态。 如果作成功完成,IHV 扩展 DLL 必须将 dwWin32Error 设置为ERROR_SUCCESS

返回值

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

言论

IHV 扩展 DLL 调用 Dot11ExtPostAssociateCompletion 函数执行以下任一作:

  • 完成调用 发起的关联后作 Dot11ExtIhvPerformPostAssociate IHV 处理程序函数。
  • 完成关联后作后,指示 hSecuritySessionID 参数引用的安全会话的端口状态更改。

    例如,如果端口的授权状态发生更改,IHV 扩展 DLL 可以通过调用 Dot11ExtPostAssociateCompletion来通知作系统。

调用 Dot11ExtPostAssociateCompletion 函数时,IHV 扩展 DLL 必须遵循这些准则。
  • 如果关联后作成功完成,则 IHV 扩展 DLL 必须将 dwReasonCode 设置为以下项之一:
    • L2_REASON_CODE_SUCCESS。
    • L2_REASON_CODE_IHV_BASE到(L2_REASON_CODE_IHV_BASE+ L2_REASON_CODE_GROUP_SIZE-1)范围内的 IHV 定义值。
    在这种情况下,IHV 扩展 DLL 必须将 dwWin32Error 设置为ERROR_SUCCESS。
    注意 如果 IHV 扩展 DLL dwWin32Error 设置为ERROR_SUCCESS,作系统将假定安全会话的端口状态处于授权状态。 端口处于授权状态后,作系统允许通过 WLAN 适配器发送所有数据数据包。
     
  • 如果关联后作失败,则 IHV 扩展 DLL 不得将 dwReasonCode 设置为L2_REASON_CODE_SUCCESS。 相反,DLL 必须将 dwReasonCode 设置为下列值之一:
    • 适当的L2_REASON_CODE_xxxx错误值。
    • L2_REASON_CODE_IHV_BASE到(L2_REASON_CODE_IHV_BASE+ L2_REASON_CODE_GROUP_SIZE-1)范围内的 IHV 定义值。
    在这种情况下,IHV 扩展 DLL 不得将 dwWin32Error 设置为ERROR_SUCCESS。 相反,DLL 必须将 dwWin32Error 设置为 Winerror.h 中定义的适当错误代码。
    注意 如果 IHV 扩展 DLL 未 dwWin32Error 设置为ERROR_SUCCESS,作系统将假定安全会话的端口状态处于未经授权的状态。 端口处于未经授权的状态后,作系统允许安全数据包(包括通过 Dot11ExtSendPacket IHV 扩展函数发送的数据包)通过 WLAN 适配器发送。
     
  • 每当调用 Dot11ExtIhvAdapterResetDot11ExtIhvDeinitAdapter IHV 处理程序函数时,IHV 扩展 DLL 必须调用 Dot11ExtPostAssociateCompletion 来取消所有挂起的关联后作。 在这种情况下,DLL 必须将 dwStatus 参数设置为ERROR_CANCELLED。

要求

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

另请参阅

Dot11ExtIhvAdapterReset

Dot11ExtIhvDeinitAdapter

Dot11ExtIhvInitAdapter

本机 802.11 IHV 处理程序函数

Dot11ExtIhvPerformPostAssociate

DOT11_MAC_ADDRESS

Dot11ExtSendPacket