wlanapi.h (wlansetFilterList 函数)

WlanSetFilterList 函数设置允许/拒绝列表。

语法

DWORD WlanSetFilterList(
  [in]           HANDLE                    hClientHandle,
  [in]           WLAN_FILTER_LIST_TYPE     wlanFilterListType,
  [in, optional] const PDOT11_NETWORK_LIST pNetworkList,
                 PVOID                     pReserved
);

参数

[in] hClientHandle

客户端的会话句柄,由上一次对 WlanOpenHandle 函数的调用获取。

[in] wlanFilterListType

一个WLAN_FILTER_LIST_TYPE值,该值指定筛选器列表的类型。 该值必须是 wlan_filter_list_type_user_permitwlan_filter_list_type_user_deny。 不能使用此函数设置组策略定义的列表。

[in, optional] pNetworkList

指向 DOT11_NETWORK_LIST 结构的指针,该结构包含要允许或拒绝的网络列表。 结构的 dwIndex 成员的值必须小于结构的 dwNumberOfItems 成员的值;否则,可能会出现访问冲突。

pReserved

保留供将来使用。 必须设置为 NULL

返回值

如果函数成功,则返回值为 ERROR_SUCCESS。

如果函数失败,则返回值可能是以下返回代码之一。

返回代码 说明
ERROR_ACCESS_DENIED
调用方没有足够的权限来设置筛选器列表。

将 wlanFilterListType 设置为 wlan_filter_list_type_user_permit 的情况下调用时, WlanSetFilterList 将检索随 wlan_secure_permit_list 对象一起存储 (DACL ) 自由访问控制列表。 在 wlanFilterListType 设置为 wlan_filter_list_type_user_deny 的情况下调用时, WlanSetFilterList 将检索随 wlan_secure_deny_list 对象一起存储的 DACL。 在上述任一情况下,如果 DACL 不包含向调用线程的访问令牌授予WLAN_WRITE_ACCESS权限的 ACE) (访问控制项,则 WlanSetFilterList 将返回 ERROR_ACCESS_DENIED

ERROR_INVALID_PARAMETER
hClientHandleNULL 或无效,或 pReserved 不为 NULL
ERROR_INVALID_HANDLE
在句柄表中找不到句柄 hClientHandle
ERROR_NOT_SUPPORTED
此函数是从不受支持的平台调用的。 如果从具有 SP3 的 Windows XP 或具有 SP2 客户端的 Windows XP 无线 LAN API 调用此函数,则将返回此值。
RPC_STATUS
各种错误代码。

注解

组策略允许和拒绝列表优先于用户的允许列表和拒绝列表。 这意味着,如果网络出现在组策略拒绝列表中,则对用户允许列表中的网络的访问将被拒绝。 同样,如果网络出现在组策略允许列表中,则允许访问用户的拒绝列表中的网络。 将允许不在用户列表或组策略列表上的网络。

拒绝的网络无法通过自动配置进行连接,并且不会包含在可见网络列表中。 新的用户允许列表和拒绝列表将覆盖以前版本的用户列表。

若要清除筛选器列表,请将 pNetworkList 参数设置为 NULL,或将指针传递到将 dwNumberOfItems 成员设置为 0 的DOT11_NETWORK_LIST结构。

若要将所有 SSID 添加到筛选器列表,请将指针传递到具有关联DOT11_NETWORK结构的DOT11_NETWORK_LIST结构,该结构DOT11_SSID结构的 uSSIDLength 成员设置为 0。

若要将所有 BSS 类型添加到筛选器列表,请将指针传递到具有关联DOT11_NETWORK结构的DOT11_NETWORK_LIST,该结构将其 dot11BssType 成员设置为 dot11_BSS_type_any

netsh wlan add filternetsh wlan delete filter 命令在命令行上提供类似的功能。 有关详细信息,请参阅 适用于无线局域网的 Netsh 命令 (wlan)

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 wlanapi.h (包括 Wlanapi.h)
Library Wlanapi.lib
DLL Wlanapi.dll

另请参阅

WlanGetFilterList