Поделиться через


Функция WlanConnect (wlanapi.h)

Функция WlanConnect пытается подключиться к определенной сети.

Синтаксис

DWORD WlanConnect(
  [in] HANDLE                            hClientHandle,
  [in] const GUID                        *pInterfaceGuid,
  [in] const PWLAN_CONNECTION_PARAMETERS pConnectionParameters,
       PVOID                             pReserved
);

Параметры

[in] hClientHandle

Дескриптор сеанса клиента, возвращенный предыдущим вызовом функции WlanOpenHandle .

[in] pInterfaceGuid

GUID интерфейса, используемого для подключения.

[in] pConnectionParameters

Указатель на структуру WLAN_CONNECTION_PARAMETERS , указывающую тип подключения, режим, сетевой профиль, идентификатор SSID, идентифицирующий сеть, и другие параметры.

Windows XP с пакетом обновления 3 (SP3) и API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2): Существуют некоторые ограничения на элементы WLAN_CONNECTION_PARAMETERS . Это означает, что структуры, допустимые для Windows Server 2008 и Windows Vista, могут быть недопустимыми для Windows XP с пакетом обновления 3 (SP3) или API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2). Список ограничений см. в разделе WLAN_CONNECTION_PARAMETERS.

pReserved

Зарезервировано для последующего использования. Для параметра должно быть задано значение NULL.

Возвращаемое значение

Если функция выполняется успешно, возвращаемое значение будет ERROR_SUCCESS.

Если функция завершается сбоем, возвращаемое значение может быть одним из следующих кодов возврата.

Код возврата Описание
ERROR_INVALID_PARAMETER
Произошло одно из следующих условий:
  • Значение hClientHandle равно NULL или недопустимо.
  • pInterfaceGuid имеет значение NULL.
  • pConnectionParameters имеет значение NULL.
  • Члену dwFlags структуры, на которую указывает pConnectionParameters, не задано ни одно из значений, указанных на странице WLAN_CONNECTION_PARAMETERS.
  • Элемент wlanConnectionMode структуры, на который указывает pConnectionParameters , имеет значение wlan_connection_mode_discovery_secure или wlan_connection_mode_discovery_unsecure, а элемент pDot11Ssid той же структуры имеет значение NULL.
  • Элемент wlanConnectionMode структуры, на который указывает pConnectionParameters , имеет значение wlan_connection_mode_discovery_secure или wlan_connection_mode_discovery_unsecure, а члену dot11BssType той же структуры присвоено значение dot11_BSS_type_any.
  • Элемент wlanConnectionMode структуры, на который указывает pConnectionParameters , имеет значение wlan_connection_mode_profile, а член strProfile той же структуры имеет значение NULL или длина профиля превышает WLAN_MAX_NAME_LENGTH.
  • Элемент wlanConnectionMode структуры, на который указывает pConnectionParameters , имеет значение wlan_connection_mode_profile, а член strProfile той же структуры имеет значение NULL или длина профиля равна нулю.
  • Элемент wlanConnectionMode структуры, на который указывает pConnectionParameters , имеет значение wlan_connection_mode_invalid или wlan_connection_mode_auto.
  • Член dot11BssType структуры, на который указывает pConnectionParameters , имеет значение dot11_BSS_type_infrastructure, а члену dwFlags той же структуры присваивается значение WLAN_CONNECTION_ADHOC_JOIN_ONLY.
  • Член dot11BssType структуры, на который указывает pConnectionParameters , имеет значение dot11_BSS_type_independent, а члену dwFlags той же структуры присваивается значение WLAN_CONNECTION_HIDDEN_NETWORK.
  • Элементу dwFlags структуры, на которую указывает pConnectionParameters, задано значение WLAN_CONNECTION_IGNORE_PRIVACY_BIT, а для элемента wlanConnectionMode той же структуры не задано значение wlan_connection_mode_temporary_profile или элементу dot11BssType той же структуры присвоено значение dot11_BSS_type_independent.
ERROR_INVALID_HANDLE
Дескриптор hClientHandle не найден в таблице дескрипторов.
RPC_STATUS
Различные коды ошибок.
ERROR_ACCESS_DENIED
Вызывающий объект не имеет достаточных разрешений.

Комментарии

Функция WlanConnect возвращает немедленно. Чтобы получать уведомления о том, что подключение установлено или при отсутствии дальнейших попыток подключения, клиент должен зарегистрироваться для получения уведомлений, вызвав WlanRegisterNotification.

Элемент strProfile структуры WLAN_CONNECTION_PARAMETERS , на который указывает pConnectionParameters , указывает профиль, используемый для подключения. Если этот профиль является профилем всех пользователей, вызывающий объект WlanConnect должен иметь доступ к профилю на выполнение. В противном случае вызов WlanConnect завершится ошибкой с возвращаемым значением ERROR_ACCESS_DENIED. Разрешения для профиля для всех пользователей устанавливаются при создании или сохранении профиля с помощью WlanSetProfile или WlanSaveTemporaryProfile.

Чтобы выполнить операцию подключения в командной строке, используйте команду netsh wlan connect . Дополнительные сведения см. в разделе Команды Netsh для беспроводной локальной сети (wlan).

Windows XP с пакетом обновления 3 (SP3) и API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2): WlanConnect можно использовать только для подключения к сетям в списке предпочтительных сетей. Чтобы добавить сеть в список предпочтительных сетей, вызовите WlanSetProfile.

Требования

   
Минимальная версия клиента Windows Vista, Windows XP с пакетом обновления 3 (SP3) [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header wlanapi.h (включая Wlanapi.h)
Библиотека Wlanapi.lib
DLL Wlanapi.dll
Распространяемые компоненты API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2)

См. также раздел

WLAN_CONNECTION_PARAMETERS

WlanDisconnect